我有一个包含一些项目的 ListView。我想设置 ListView 一些项目是删除线。我知道如何使用 onclicklistener 来制作它,但我想加载带有已标记删除线项目的 ListView。
所以我启动了我的程序,效果应该是这样的:
第一个/删除线/
第二
第三
第四个/删除线/
我有一个包含一些项目的 ListView。我想设置 ListView 一些项目是删除线。我知道如何使用 onclicklistener 来制作它,但我想加载带有已标记删除线项目的 ListView。
所以我启动了我的程序,效果应该是这样的:
第一个/删除线/
第二
第三
第四个/删除线/
要自定义您的列表视图,您可能需要创建一个自定义 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;
}
}
如果您从 SimpleAdapter 加载数据,请覆盖 SimpleAdapter.setViewBinder 方法。当您执行 ListView.SetAdapter(SimpleAdapter) 以使用来自 SimpleAdapter 的数据填充您的 Listview 时使用此方法。覆盖此方法以删除所需的行,但请确保包含以下代码行:
TextView tv=(TextView) aView;
tv.setText(aCursor.getString(aColumnIndex));
这些是为了确保您的列表视图项目文本出现。