android 自带的 ListView的单项选择item做的很丑,最近写了一个新的 ListView 的单项选择,代码如下:

public ArrayList mArrayListChoosed; private AdapterView.OnItemClickListener listViewItemClickListener = new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // TODO Auto-generated method stub ImageView v=(ImageView) view.findViewById(R.id.imageview_bookshelves_radio_button); if (mArrayListChoosed.contains(position)) { mArrayListChoosed.clear(); v.setBackgroundResource(R.drawable.radio_button_off); } else { if (mArrayListChoosed.size() > 0) { View v1 = parent.getChildAt(mArrayListChoosed.get(0)); v1.findViewById(R.id.imageview_bookshelves_radio_button).setBackgroundResource(R.drawable.radio_button_off); mArrayListChoosed.clear(); } mArrayListChoosed.add(position); v.setBackgroundResource(R.drawable.radio_button_on); rowId=id; } } };

 

ListView 中adapter可以是一个基于BaseAdapter的子类,在 getView()中代码如下:

L ayoutInflater inflater; View view; if(convertView == null) { inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); view = inflater.inflate(R.layout.listview_item_manage_bookshelves, null); }else{ view=convertView; } final HolderView holderView = new HolderView(); holderView.mImageViewCheck = (ImageView) view.findViewById(R.id.imageview_bookshelves_check_button); holderView.mTextViewBookName = (TextView) view.findViewById(R.id.textview_manage_book_name); holderView.mTextViewBookAuthorName = (TextView) view.findViewById(R.id.textview_manage_bookshelves_author);

自定义的HolerView 代码如下:

private class HolderView { private ImageView mImageViewCheck; private TextView mTextViewBookName; private TextView mTextViewBookAuthorName; }

 

这样的话,就可以随意定义listview中item的单项选择样式了。

 

更多相关文章

  1. Android(安卓)BLE Gatt实现原理解析(未完)
  2. Android桌面小部件实例 桌面小时钟
  3. Android(安卓)解决布局问题
  4. Android开发7:单元测试
  5. android手机两种方式获取IP地址
  6. 在下方的tab页
  7. android截屏代码:C++实现
  8. Android中的AutoCompleteTextView的使用
  9. Android(安卓)Bundle类

随机推荐

  1. Android文件下载功能实现代码
  2. android实现携程购票起始点位置交换
  3. Android(Java):minSdkVersion、targetSdk
  4. android横向翻页滚动菜单
  5. Android面试题整理(1)
  6. android 自定义 3D View
  7. 使用原始的HTTP拼凑请求的方式上传多张图
  8. Android硬编解码MediaCodec使用笔记
  9. android Fragment 源码分析
  10. achartengine与Android中ScrollView的冲