是否可以在运行时使用Layouts为ListView定义适配器,就像活动一样可以?
我搜索解决方案是因为我无法使用任何XML文件,所以即使是适配器布局也应该写在代码中。
答案 0 :(得分:0)
好的,我找到了解决方案。你必须在setListAdapter() - methode中定义一个新的ArrayAdapter并覆盖getView() - methode。
setListAdapter(new ArrayAdapter<string>(this, R.layout.list_item, strings) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row;
if (null == convertView) {
row = mInflater.inflate(R.layout.list_item, null);
} else {
row = convertView;
}
TextView tv = (TextView) row.findViewById(android.R.id.text1);
tv.setText(getItem(position));
return row;
}
});