原文在这里:http://duduli.iteye.com/blog/1453576

可以实现多选,那么如何实现单选呢,这里我写了一个非常简单的方法:

    public void onListItemClick(ListView listView, View view, int position, long id) {
super.onListItemClick(listView, view, position, id);
CheckedTextView ct;
CheckedTextView multiple;
int count = listView.getChildCount();
for (int i = 0 ; i < count ; i ++ ) {
ct = (CheckedTextView)listView.getChildAt(i).findViewById(R.id.checkText);
ct.setChecked(false);
}
multiple = (CheckedTextView)view.findViewById(R.id.checkText);
multiple.toggle();
}

当然,你需要在你自定义的Adapter的getView()里面

holder.checkedTextView = (CheckedTextView)convertView.findViewById((R.id.checkText));

这里是我定义的ListView中每个View的xml布局

<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"> <ImageView
android:layout_width="wrap_content"
android:padding="0dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:background="@drawable/navigation_category_icon"
android:id="@+id/imageView"
android:layout_gravity="center_horizontal|top"/> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="Large Text"
android:id="@+id/textView"
android:layout_gravity="center_horizontal|top"
android:layout_toRightOf="@+id/imageView"
android:layout_marginBottom="11dp"/>
<CheckedTextView
android:id="@+id/checkText"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center_vertical"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:paddingLeft="6dip"
android:paddingRight="6dip"
/>
</RelativeLayout>

这里是效果图

最新文章

  1. js闭包的作用域以及闭包案列的介绍:
  2. 从现在开始,使用简单优雅的validata.js
  3. bigworld源码分析(5)——BaseApp分析
  4. php unicode
  5. 武汉科技大学ACM:1003: 华科版C语言程序设计教程(第二版)例题6.6.改编
  6. 刚开始学HTML自己做的,求大神些多多指教。
  7. zoj 1962 How Many Fibs?(字符串化为数字处理)
  8. ASP.NET - 上传图片方法(单张)
  9. 008.Adding a model to an ASP.NET Core MVC app --【在 asp.net core mvc 中添加一个model (模型)】
  10. Hadoop源码篇--Client源码
  11. centos7下Etcd3集群搭建
  12. Python快速学习02:基本数据类型 &amp; 序列
  13. webService之helloword(java)rs
  14. 【mpu6050】学习笔记——基础知识点记录
  15. Django实现websocket完成实时通讯、聊天室、在线客服等
  16. oracle错误处理之ORA-00054:资源正忙,要求指定NOWAIT
  17. thinkphp---定义前台视图模板
  18. Pandas数据分析python环境说明文档
  19. Machine learning 第5周编程作业
  20. Unity3D 浅谈被忽略的Quality [转]

热门文章

  1. Qt跨线程调用错误解析及解决办法
  2. SyntaxError: Missing parentheses in call to &#39;print&#39; 这个错误原因是Python版本问题
  3. 一个好的Java时间工具类DateTime
  4. 使用Nginx代理Django
  5. 自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第三部分
  6. GDB调试实用命令
  7. MySql学习笔记——存储函数
  8. django orm如何作一个优雅一点的filter?
  9. 八大排序算法JS及PHP代码实现
  10. springboot1.5.4 idea 自动保存编译更新