正确理解listView的listSelector

1.listSelector意思是说当Item被选中时,,Item小容器应该呈现的颜色

比如我设置listSeletor为灰色,而把item布局文件的颜色会覆盖这个颜色,

也就是item是内层颜色,listSeletor是外层颜色,这是理解的核心

例如:

arg1就是ListView点击的ITEM的小容器大笑,而defaultview是某一个ITEM的布局文件映射的对象

而所有被点击的小容器设置为黑色,

结果当点击defaultview这个ITEM的时候,布局映射为红色,外部为黑色,结果显示红色

当点击非defaulteView的ITEm的时候,布局映射为透明色,外部为黑色,结果显示黑色


listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
     try{
         FAddress ad  = (FAddress) arg0.getItemAtPosition(arg2);
         Intent intent = new Intent();
         intent.putExtra(ExtraName.ADDRESS_ITEM, ad);
         if (mComefromOrder) {
             View defaultView = mAddressListAdapter.getDefaultView();
             if (defaultView != null) {
                 defaultView.setBackgroundColor(getApplicationContext().getResources().getColor(android.R.color.transparent));
             }
             defaultView.setBackgroundColor(getApplicationContext().getResources().getColor(android.R.color.holo_red_dark));
             arg1.setBackgroundColor(getApplicationContext().getResources().getColor(android.R.color.black));
             setResult(RESULT_OK, intent);
        //     finish();
         }
     }catch (Throwable e){
         e.printStackTrace();
     }



android:listSelector="@color/gray4" >

你可能感兴趣的:(正确理解listView的listSelector)