我有一个ListView,里面有一些东西。我想在某些项目带有删除线的位置设置ListView。我知道如何使用onclicklistener来实现,但我想用已经标记了删除线的项来加载ListView。
所以我启动了我的程序,结果应该是这样的:
第一个/删除线/
第二
第三
第四条/删除线/
发布于 2011-11-12 08:01:36
要自定义列表视图,您可能需要创建一个自定义ListView ArrayAdapter,它将加载您的文本视图并将其设置为删除线:
private class ResultsAdapter extends ArrayAdapter<Route> {
private ArrayList<Route> items;
public ResultsAdapter(Context context, int textViewResourceId, ArrayList<Route> items) {
super(context, textViewResourceId, items);
this.items = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.route_row, null);
}
Route res = items.get(position);
if (res != null) {
TextView line1 = (TextView) v.findViewById(R.id.route_line1);
//setup your strikethrough as needed.
}
}
return v;
}
}发布于 2011-11-12 07:56:48
如果要从SimpleAdapter加载数据,请重写SimpleAdapter.setViewBinder方法。当您执行ListView.SetAdapter( SimpleAdapter )以使用SimpleAdapter中的数据填充Listview时,将使用此方法。重写此方法以删除所需的行,但确保包含以下代码行:
TextView tv=(TextView) aView;
tv.setText(aCursor.getString(aColumnIndex));这些都是为了确保您的listview项目文本出现。
https://stackoverflow.com/questions/8101081
复制相似问题