listView 单选实现
- public class SingleView extends LinearLayout implements Checkable {
- private TextView mText;
- private CheckBox mCheckBox;
- public SingleView(Context context, AttributeSet attrs, int defStyle) {
- super(context, attrs, defStyle);
- initView(context);
- }
- public SingleView(Context context, AttributeSet attrs) {
- super(context, attrs);
- initView(context);
- }
- public SingleView (Context context) {
- super(context);
- initView(context);
- }
- private void initView(Context context){
- // 填充布局
- LayoutInflater inflater = LayoutInflater.from(context);
- View v = inflater.inflate(R.layout.item_single_layout , this, true);
- mText = (TextView) v.findViewById(R.id. title);
- mCheckBox = (CheckBox) v.findViewById(R.id. checkbox);
- }
- @Override
- public void setChecked( boolean checked) {
- mCheckBox.setChecked(checked);
- }
- @Override
- public boolean isChecked() {
- return mCheckBox.isChecked();
- }
- @Override
- public void toggle() {
- mCheckBox.toggle();
- }
- public void setTitle(String text){
- mText.setText(text);
- }
- }
- public class MainActivity extends Activity {
- private ArrayList<String> groups;
- private ListView listView;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout. activity_main);
- listView = (ListView) findViewById(R.id. listView);
- groups = new ArrayList<String>();
- groups.add( "11");
- groups.add( "22");
- groups.add( "33");
- groups.add( "44");
- groups.add( "55");
- groups.add( "66");
- groups.add( "77");
- groups.add( "88");
- groups.add( "99");
- groups.add( "00");
- SingleAdapter singleAdapter = new SingleAdapter();
- listView.setAdapter(singleAdapter);
- Button button = (Button) findViewById(R.id. button);
- button.setOnClickListener( new OnClickListener() {
- @Override
- public void onClick(View v) {
- PickNum();
- }
- });
- }
- private void PickNum() {
- int position = listView.getCheckedItemPosition();
- if (ListView. INVALID_POSITION != position) {
- Toast. makeText(MainActivity.this, groups.get(position), 0).show();
- }
- }
- private class SingleAdapter extends BaseAdapter {
- @Override
- public int getCount() {
- return groups.size();
- }
- @Override
- public Object getItem( int position) {
- // TODO Auto-generated method stub
- return null;
- }
- @Override
- public long getItemId( int position) {
- // TODO Auto-generated method stub
- return 0;
- }
- @Override
- public View getView( final int position, View convertView,
- ViewGroup parent) {
- final SingleView singleView = new SingleView(MainActivity.this );
- singleView.setTitle( groups.get(position));
- return singleView;
- }
- }
- }
http://download.csdn.net/detail/knxw0001/7961143
listView 单选实现的更多相关文章
- ListView单选的实现总结(转)
今天在智能停车场项目中需要实现PullToRefreshListView的单选功能,考虑到分页,刷新等,以前的实现方式是采用自己维护一个集合保存选中位置的选中状态,但这个方式比较繁琐,今天采用了lis ...
- ListView 自己定义BaseAdapter实现单选打勾(无漏洞)
(假设须要完整demo,请评论留下邮箱) (眼下源代码已经不发送.假设须要源代码,加qq316701116.不喜勿扰) 近期由于一个项目的原因须要自己定义一个BaseAdapter实现ListVIew ...
- Android录屏命令、Android录Gif、Android录视频
NoHttp开源地址:https://github.com/yanzhenjie/NoHttp NoHttp具体使用文档已公布,你想知道的全都有,请点我移步! 版权声明:转载请注明本文转自严振杰的博客 ...
- Android在listview添加checkbox实现单选多选操作问题(转)
转自:http://yangshen998.iteye.com/blog/1310183 在Android某些开发需求当中,有时候需要在listveiw中加入checkbox实现单选,多选操作.表面上 ...
- 本地数据下,radiobutton和图片组合,利用adapter+listview进行单选
浮生偷得半日闲,等接口定义的过程中,重新复习下adapter+listview实现单选的方法 主界面 <RelativeLayout xmlns:android="http://sch ...
- ListView 实现多选/单选
http://blog.csdn.net/ljfbest/article/details/40685327 ListView自身带了单选.多选模式,可通过listview.setChoiceMode来 ...
- 【转】ListView与RadioButton组合——自定义单选列表
原文网址:http://blog.csdn.net/checkin001/article/details/11519131 Android自带的RadioButton单选框只支持添加文字,我们自己写A ...
- ListView与RadioButton组合——自定义单选列表
标签: radiobuttonlistviewandroidlayout 2013-09-10 11:13 19396人阅读 评论(8) 收藏 举报 分类: Android(19) 版权声明: ...
- C# winform项目中ListView控件使用CheckBoxes属性实现单选功能
C# winform项目中ListView控件使用CheckBoxes属性实现单选功能 在做项目时需要使用ListView控件的CheckBoxes属性显示,还要在点击行时自动选中CheckBoxes ...
随机推荐
- 归并排序java
import java.util.Arrays; public class MergeSort { public static void main(String[] args) { MergeSort ...
- ckplayer 项目实际应用代码整理,支持标清,高清,超清切换!
ckplayer是个免费,小巧,功能强大的视频播放器,前段时间有个项目需要做个收费视频播放的功能,于是就用了ck,目前项目已经弄完,完美支持pc和手机端的播放,重要的是可以支持清晰度切换,最后加了个是 ...
- POJ 2594 - Treasure Exploration
一个星球上有很多点,点与点之间有很多单向路 问可重点的最小路径覆盖 利用floyd缩点后求二分图最大匹配 #include <iostream> #include <cstdio&g ...
- 【搜索引擎Jediael开发笔记2】使用HttpClient下载网页至本地文件
本文使用HttpClient根据url进行网页下载.其中 (1)HttpClient的相关知识请参见HttpClient基础教程 (2) package org.ljh.search.download ...
- 初学swift笔记 方法(九)
import Foundation /* 方法 */ //实例方法 一定需要依附于对象 class MyPoint { var x: Double = 0.0 var y: Double = 0.0 ...
- python学习day7
目录 一.反射 二.socket 三.socketserver 一.反射 python中的反射功能是由以下四个内置函数提供:hasattr.getattr.setattr.delattr,改四个函数分 ...
- MFC 遍历FTP服务器目录中文乱码问题
在编写FTP客户端的时候我用的是server u来做我的测试服务器,而server u 默认使用utf-8作为默认字符集,vs则使用unicode作为默认字符集,所以会产生乱码,将server u的默 ...
- NFC的安全性
NFC近距离无线技术具有快捷.易用.安全等特性,其中安全是支付行业最关心的特性. 众所周知传统磁条银行卡的账号信息,是记录在磁条中,当进行刷卡交易时,POS机将交易金额,银行卡中的账号信息以及用户输入 ...
- delphi idhttp 实战用法(TIdhttpEx)
以delphi XE8 自带indy(10.5.8.0)组件为例,分享实战中遇到的问题及解决方法. TIdHttpEx 用法实例01[多线程获取网页](包含完整源码) 实例02(如何Post参数,如何 ...
- C++ new和delete实现原理——new和delete最终调用malloc和free
new和delete最终调用malloc和free,关于malloc和free实现原理参见这篇文章: http://blog.csdn.net/passion_wu128/article/detail ...