我正在创建一个自定义对话框,其中包含两个图像作为标题和对话框内的列表视图。在那个列表视图中有一些我正在显示的项目,现在我希望列表视图中的项目应该获得不同的背景?就像假设我有 5 个项目要在列表视图中显示,那么位置 1,3,5 的项目与位置 2,4 的项目具有不同的背景。可能吗?帮我
问问题
284 次
2 回答
0
在列表视图中加载项目时,您可以使用自定义适配器。
为列表视图中的项目创建布局 xml 并进行设置。
像 myitemlist_row.xml 和在活动中:
MyAdapter _adapter = new MyAdapter(getActivity().getApplicationContext(), R.layout.myitemlist_row, null, uiBindFrom, uiBindTo, CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER, this);
_mylist.setAdpater(_adapter);
适配器的示例代码:
@Override
public void bindView(View view, Context context, Cursor cursor)
{
super.bindView(view, context, cursor);
ViewHolder holder = (ViewHolder)view.getTag();
if (holder == null)
{
holder = new ViewHolder();
holder.Background_Layout = (LinearLayout) view.findViewById(R.id.Background_Layout);
}
//you can use now holder.Background_Layout.setBackgroundColor or setBackgroundDrawable accordind to the data, as you want
希望能帮助到你 :-)
于 2012-07-31T09:11:04.027 回答
0
试试这个,假设您使用的是适配器...
public View getView(int position, View convertView, ViewGroup parent) {
View vi=convertView;
if(convertView==null){
vi = inflater.inflate(R.layout.<item_layout>, null);
}
else
if(pos%2==0)
vi.setBackgroundResource(<image_1_res_id>);
else
vi.setBackgroundResource(<image_2_res_id>);
return vi;
}
于 2012-07-31T09:12:01.730 回答