自定义适配器,所选项目背景
我有自定义适配器视图的问题。 我尝试,更改Click
事件的view
背景。 我有AdapterView.OnItemClickListener
,我得到选中的项目,并调用myListView.invalidate();
无效后,调用adapters getView(...)
。 这里代码为:
@Override public View getView(int position,View convertView,ViewGroup parent){
View row = convertView; ProjectAdapterData projectItem; if (row == null) { LayoutInflater inflater = LayoutInflater.from(context); row = inflater.inflate(R.layout.project_small_item_layout, null); ProjectAdapterData projectAdapterData = new ProjectAdapterData(); row.setTag(projectAdapterData); name = (TextView)row.findViewById(R.id.txtObjectName); if (objectData[position].Name!= null) name.setText(objectData[position].Name); adress = (TextView)row.findViewById(R.id.txtObjectAdress); if (objectData[position].Adress != null) adress.setText(objectData[position].Adress); } else { background = (RelativeLayout)row.findViewById(R.id.rlProjectBackground); if (objectData[position].isSelected) background.setBackgroundColor(context.getResources().getColor(R.color.cProjectSelected)); else background.setBackgroundResource(R.color.cProjectUnSelected); //it's calls, but no result row.invalidate(); } return row; }
我的问题,为什么背景不会改变?
我的selector_list
您可以使用选择器突出显示项目
在drawable文件夹中创建一个xml文件
list_selector.xml
并在列表视图中为xml设置listSelector
android:listSelector="@drawable/list_selector"
color.xml
#000000 #FFFFFF #a5acb0 #525964 #212121 #a6b1ba #C9282D #A9A9A9 #000000 #00000000 #FFFFFF #00aceb #8AB8E0 #55000000 #627583 #393430 #1f1c17 #546778 #8E8E8E #0f5690
对于custom_list_item,布局应该是
最低版本的应用程序应为11
- 如何在android中使用UnboundID LDAP?
- 在WebView中将一组值从Android Activity传递到JavaScript
- AdMob libGDX与Google Play服务
- 从String创建RSA公钥
- Firebase如何与共享数据同步?
- 根据EditText值更改SeekBar进度
- 使用相同的密钥解密AES时BadPaddingException
- 线程“main”中的exceptionjava.lang.NoClassDefFoundError:org / codehaus / jackson / JsonParseException
- 从Androidfunction更新Textview