高斋晓开卷,独共圣人语。这篇文章主要讲述android入门 — ListView点击事件相关的知识,希望能为你提供帮助。
文章图片
listView中提供了两种点击事件的处理方法,分别是OnItemClick和OnItemLongClick。
OnItemClick提供的是点击操作的处理,OnItemLongClick提供的是长按操作的处理。
第一种的单次点击之后,默认跳转到了另外一个Activity,用于显示当前这一行的内容信息。
public class DetailedActivity extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.item2); String index = getIntent().getStringExtra("index"); String title = getIntent().getStringExtra("title"); TextView textView = (TextView)findViewById(R.id.te); textView.setText("编号:" + index + ", 名字:" + title); } }
仅仅是用一个TextView来显示内容信息。
单次点击的情况:
public void onItemClick(AdapterView< ?> parent, View view, int position, long id) { Intent intent = new Intent(); intent.setClass(this, DetailedActivity.class); //获取点击的数据 HashMap< String, Object> itemMap = (HashMap< String, Object> ) parent.getItemAtPosition(position); intent.putExtra("index", "" + position); intent.putExtra("title", "" + itemMap.get("title")); startActivity(intent); }
这是对于一次点击操作的处理,常用来做Activity的跳转。
parent.getItemAtPosition(position)
这一句的目的是为了获得当前点击的这一行的情况,这一行的具体内容是用一个HashMap存储的,map中的键值分别是“logo”、“title”、“version”、“size”。
所以用一个map的对象来存储,然后再使用key取出相应的值即可。
文章图片
长按操作的情况
public boolean onItemLongClick(AdapterView< ?> parent, View view, int position, long id) { Toast.makeText(this, "长按" + position, Toast.LENGTH_SHORT).show(); return true; }
这是用来做长按操作的处理,常被用来显示一些提示信息。
文章图片
【android入门 — ListView点击事件】
文章图片
推荐阅读
- android的窗口机制分析------UI管理系统
- Eclipse出现&quot;Running Android Lint has encountered a problem&quot;解决方式
- sharepoint 2013 office web app 2013 文档在线浏览 IE11 浏览器不兼容解决方法
- Android减少布局层次--有关Activity根视图DecorView的思考
- Android 下拉刷新上拉载入效果功能
- Android自己定义组件系列——进阶实践
- Android 进阶Dagger2 系列(入门案例一)
- 安卓应用方法数超过64k解决办法(分割Dex)
- xp系统防范人生日历升级的办法