在MainActivity.java中,我创建了一个ArrayList,其中存储了整数。当应用程序运行时,它会立即停止响应。不知道我在哪里做错了,并且怀疑TextView是否没有直接显示整数。
MainActivity.java:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayList<Numbers> numbers = new ArrayList<>();
numbers.add(new Numbers(1));
numbers.add(new Numbers(2));
numbers.add(new Numbers(3));
numbers.add(new Numbers(4));
numbers.add(new Numbers(5));
numbers.add(new Numbers(6));
numbers.add(new Numbers(7));
NumberAdapter numberAdapter = new NumberAdapter(MainActivity.this, numbers);
ListView listView = (ListView) findViewById(R.id.listview_flavor);
listView.setAdapter(numberAdapter);
}
}
数字适配器:公共类NumberAdapter扩展ArrayAdapter{
public NumberAdapter(Activity context, ArrayList<Numbers> numbers) {
super(context, 0, numbers);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// Check if the existing view is being reused, otherwise inflate the view
View listItemView = convertView;
if(listItemView == null) {
listItemView = LayoutInflater.from(getContext()).inflate(
R.layout.list_item, parent, false);
}
Numbers currentNumber = getItem(position);
TextView nameTextView = (TextView) listItemView.findViewById(R.id.version_name);
nameTextView.setText(currentNumber.getNumbers());
return listItemView;
}
}
您在Textview上设置整数值是错误的,您必须设置字符串值,请替换
nameTextView.setText(currentNumber.getNumbers());
带有
nameTextView.setText(String.valueOf(currentNumber.getNumbers()));