0

我正在创建一个自定义对话框,其中包含两个图像作为标题和对话框内的列表视图。在那个列表视图中有一些我正在显示的项目,现在我希望列表视图中的项目应该获得不同的背景?就像假设我有 5 个项目要在列表视图中显示,那么位置 1,3,5 的项目与位置 2,4 的项目具有不同的背景。可能吗?帮我

4

2 回答 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 回答