listview 的 selection mode 训练小例子
2019独角兽企业重金招聘Python工程师标准>>>
package com.example.listviewselectmode;
import android.R.integer;
import android.os.Bundle;
import android.app.ListActivity;
import android.app.ListActivity;
import android.view.ActionMode;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.AbsListView.MultiChoiceModeListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends ListActivity {
String[] itemsStrings={"a","b","c","d","e"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ListView listView=getListView();
//注意此处没有setContentView那一项
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
listView.setMultiChoiceModeListener(new ModeChoice());
//注意该adapter的第二个参数为android.R.layout.simple_list_item_checked
ArrayAdapter<String> adapter=new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_list_item_checked, itemsStrings);
setListAdapter(adapter);
}
@Override
protected void onPostCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
getActionBar().setTitle("long press to select");
super.onPostCreate(savedInstanceState);
}
class ModeChoice implements MultiChoiceModeListener{
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
// TODO Auto-generated method stub
int count=getListView().getCheckedItemCount();
switch (item.getItemId()) {
case R.id.share:
Toast.makeText(getApplicationContext(), "you share "+count+"项", 1000).show();
break;
default:
Toast.makeText(MainActivity.this, "Clicked " + item.getTitle(),
Toast.LENGTH_SHORT).show();
break;
}
return true;
}
private void setSubtitle(ActionMode mode) {
// TODO Auto-generated method stub
int count=getListView().getCheckedItemCount();
switch (count) {
case 0:
mode.setSubtitle("");
break;
case 1:
mode.setSubtitle("you select one item");
break;
default:
mode.setSubtitle("you select"+count+"items");
break;
}
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
// TODO Auto-generated method stub
getMenuInflater().inflate(R.menu.main, menu);
mode.setSubtitle("select item");
setSubtitle(mode);
//此处需注意需要返回true
return true;
}
@Override
public void onDestroyActionMode(ActionMode mode) {
// TODO Auto-generated method stub
}
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
// TODO Auto-generated method stub
return false;
}
@Override
public void onItemCheckedStateChanged(ActionMode mode, int position,
long id, boolean checked) {
// TODO Auto-generated method stub
setSubtitle(mode);
}
}
}
转载于:https://my.oschina.net/u/1015229/blog/391499
listview 的 selection mode 训练小例子相关推荐
- 深度学习与计算机视觉系列(9)_串一串神经网络之动手实现小例子
深度学习与计算机视觉系列(9)_串一串神经网络之动手实现小例子 作者:寒小阳 时间:2016年1月. 出处:http://blog.csdn.net/han_xiaoyang/article/de ...
- QML - 小例子 - 文件目录浏览器
QML - 小例子 - 文件目录浏览器 QML写动画比较方便,参考QML提供的例子写了如下在Android上可用的文件目录浏览器(电脑端其实也可用,只是还不完整) 以上这两张截图是在电脑上直接运行时的 ...
- Tensorflow神经网络框架 小例子 三层神经网络 卷积神经网络 循环神经网络 神经网络可视化
Tensorflow神经网络框架 以前我们讲了神经网络基础,但是如果从头开始实现,那将是一个庞大且费时的工作,所以我们选择一条捷径---神经网络框架.我理解的神经网络框架就相当于一个工具包.就比如我们 ...
- CapsuleNet的一个小例子
引用YouTube上一个up主的视频,讲解一个capsulenet的一个小例子 识别的过程 假设我们要识别右面的"船",经过卷积得到2个识别矩形和三角形的胶囊(即向量,之前一篇博客 ...
- 生成句法分析树以及从一个小例子来看词义消歧及语义角色标注
一.生成句法分析树 把一句话按照句法逻辑组织成一棵树,由人来做这件事是可行的,但是由机器来实现是不可思议的,然而算法世界就是这么神奇,把一个十分复杂的过程抽象成仅仅几步操作,甚至不足10行代码,就能让 ...
- Qt 小例子学习44 - 磁贴界面
Qt 小例子学习44 - 磁贴界面 FormModel.h #ifndef FORMMODEL_H #define FORMMODEL_H#include <QAbstractListModel ...
- OOM问题小例子及思考
目录 一.背景介绍 二.思路&方案 三.过程 四.总结 五.升华 一.背景介绍 前段时间朋友新进入一个公司,遇到线上系统cpu飙高,内存占满情况:和他交流过后有了本篇总结,该博文会以一个简单的 ...
- python编程人工智能小例子,python人工智能算法代码
python 怎么实现人工智能 一.Python是解释语言,程序写起来非常方便写程序方便对做机器学习的人很重要. 因为经常需要对模型进行各种各样的修改,这在编译语言里很可能是牵一发而动全身的事情,Py ...
- c语言连接数据库例子,c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual help).doc...
这是精心收集的精品经典资料,值得下载保存阅读! c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual h ...
最新文章
- 谷歌机器人业务重组 花里胡哨没有用 要做实干家
- [转载]WebForm下使用 jQuery.loadUserControl异步load用户控件
- 小工具发布,QCountDown-语音倒计时
- oracle全局索引 效率,关于插入,全局索引和局部索引的情况,那种效率高
- 爱立信CEO:全球芯片短缺可能持续到2022年
- 【最小生成树】Prim算法和Kruskal算法的区别对比
- GDAL的一个BUG
- html页面画一个矩形,使用HTML5 canvas绘制一个矩形的方法
- 大数模拟——K - Large Division LightOJ - 1214
- springmvc或者springboot 中实现跨域的5种方式
- paip.验证码识别----判断汉字还是英文
- SpringBoot项目防止Sql注入
- Mac野外动物高清动态桌面壁纸
- 京东X无人超市布局瞄准加油站,下一个场景会在哪儿
- 读coco数据集的代码接口了解segmentation的处理方法
- 缩放指数型线性单元(SELU)
- Ubuntu安装蓝牙驱动
- 河南对口升学计算机考纲,2018年河南省对口升学考纲.
- Attach机制实现完全解读
- (windows) node-sass 安装报错