专栏首页java初学android入门 — ListView点击事件

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;
    }

  这是用来做长按操作的处理,常被用来显示一些提示信息。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一致性哈希算法(consistent hashing)

    Mister24
  • 数据库索引

    Mister24
  • top K 问题

    Mister24
  • Vue导出json数据到Excel电子表格

    https://segmentfault.com/a/1190000012117303

    前端博客 : alili.tech
  • MySQL:5.6 大事务show engine innodb status故障一例

    今天遇到一个朋友的线上问题,大概意思就是说,我有一个线上的大事务大概100G左右,正在做回滚,当前看起来似乎影响了线上的业务,并且回滚很慢,是否可以减轻对线上业...

    用户1278550
  • 如何创建开通网站?

    本文大概讲解如何在镜像护卫神·全能安全环境(Win2008 IIS|ASP|PHP|.NET)上如何开设网站,绑定域名等。

    护卫神小符
  • 编程小技巧之 Linux 文本处理命令

    合格的程序员都善于使用工具,正所谓君子性非异也,善假于物也。合理的利用 Linux 的命令行工具,可以提高我们的工作效率。

    程序员历小冰
  • 最近面试碰到的两道算法题|面试相关

    最近阿里的一道面试题,其实基于多层博弈论,我想我刷过这题,我知道如何偷鸡的。我以为我在第二层,没想到我只在第一层。

    逮虾户
  • Mac 遇到问题集锦

    它可以拖动,可以拉伸改变形状,并不知道它属于哪个程序,一旦出现在 Finder 底部和桌面都会存在。 经过尝试,发现它出现的步骤是这样的:

    mzlogin
  • 【MySQL源码分析】浅谈Mysql的锁

    MySQL的表级锁有两种模式:表共享读锁(Table Read Lock)和表独占写锁(Table Write Lock)。

    桶哥

扫码关注云+社区

领取腾讯云代金券