首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ListView使用技巧-更新中

在自定义的Adapter中定义一个内部类ViewHolder,并将Item布局中的控件作为成员变量 2. 接下来只要在getView()方法中通过视图缓存机制来重用以缓存即可。...holder.idtvcontent.setText(bean.getContent()); return convertView; } /** * 创建一个内部类...设置项目间分割符 2.设置项目间分隔线 ListView各个项目之间,可以通过设置分隔线来进行区分,系统提供了divider和dividerHeight这两个属性来帮我们实现这一功能。...取消ListView的Item点击效果 4....取消ListView的Item点击效果 当点击ListView的某一项Item时,系统默认会出现一个点击效果,在Android5.X上是一个波纹的效果,而在5.X以下是一个改变背景颜色的效果,但是我们可以通过修改

95530
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    美团点餐—listview内部按钮点击事件

    PS:像listview,GridView等这些view都有写好的一些点击监听,但有些并不是咱们想要用到的,比如说listview内部有按钮,咱们要点击,而且还要在该item项上做一些操作,比如说数字加减并显示在页面上...这就用到了今天的内部点击事件的回调,当然这只是一种方法,也可能有其他更简单的方法。今天就主要说一下类似于美团的加减餐数量的回调。...meituan.PNG 这个图是比较好看的,今天所写的代码就不如这个了,主要是说回调 步骤 主布局里面只有一个listview控件 item布局样式 自定义适配器的创建 activity中回调方法 效果图...: gif02.gif 1:第一步 主布局里添加一个listview,这个就省略了。...这里面有一个类Item,就是一个实体类,里面只有name和num,和setget方法。

    2.7K50

    Android开发之ListView使用经验分享

    在Android开发中,ListView是使用最广泛的组件之一,虽然谷歌推出了RecycleView,但是很多项目中依旧在使用ListView,本文将总结一下使用过程中遇到的一些问题,与大家共勉~~~...(假设每一个列表项所对应的布局文件中包含了两个组件:TextView和EditText,id分别为textview和edittext。...id,android:id="@android:id/list" 七、Header 和 Footer(一个ListView只有一个) 通过ListView的addHeaderView();和addFooterView...此时需要给footer再加上一个layout或者是父级的view才可以,如下所示: ListView listView = new ListView(context); TextView footer...(footer); listView.addFooterView(footerParent); footer.setVisibility(View.GONE); 3、如何设置head和footer不可点击

    1.4K60

    2.ui

    invisible表示控件不可见,但是它仍然占据着原来的位置和大小, 可以理解成控件变成透明状态了。 gone则表示控件不仅不可见,而且不再占用任何屏幕空间。...可以借助一个 ViewHolder来对这部分性能进行优化, 新增了一个内部类 ViewHolder,用于对控件的实例进行缓存。...子项布局的 id,这是一个 Android内置的 局文件, 里面只有一个 TextView, 可用于简单地显示一段文本。..., new String[]{"photo", "name"}, new int[]{R.id.iv_photo, R.id.tv_name})); } ListView的点击事件 listView.setOnItemClickListener...注册了一个监听器,当用户点击了 ListView中的任何一个子项时就会回调 onItemClick()方法, 在这个方法中可以通过 position参数判断出用户点击的是哪一个子项,然后获取到相应的水果

    1.6K90

    从0系统学Android--3.5 最常用和最难用的控件---ListView

    这里使用最简单的 ArrayAdapter ,android.R.layout.simple_list_itme_1 是 Android 内置的布局文件,里面只有一个简单的 TextView。...3.5.2 定制 LIstView 的界面 只显示一行文字太过单调了,下面对 ListView 的界面进行定制,显示更加复杂的内容。 定义一个实体类,作为 ListView 适配器的适配类型。...tv; } 新增加一个 ViewHolder内部类,用于对控件的实例进行缓存,当 convertView 为 null 的时候就创建一个 ViewHolder 并将它存放在 View 中。...3.5.4 ListView 点击事件 给 ListView 设置点击事件 listView.setOnItemClickListener(new AdapterView.OnItemClickListener...> parent, View view, int position, long id) { // 通过 positon 我们就可以确定是点击的哪一个子项

    60710

    Android ListView优化之局部刷新(更新)(非notifyDataSetChanged)

    commonAdapter.notifyDataSetChanged(); } }); } } 以上代码是较为常见的代码,我们在点击的时候将当前点击的...int lastVisiblePosition = listView.getLastVisiblePosition(); /**在看见范围内才更新,不可见的滑动后自动会调用getView...} } } 我们来看下日志:在初始化加载完listview时调用了多次,在点击更新界面的时候只调用了一次。...因为ListView默认只会加载一屏的数据,所以要判断其可见范围。不可见的在滑动的时候getView会自动调用更新数据。...最后要强调的一点就是关于布局优化,最好将item的高度设置为一个固定的值,这样能减少getView的调用次数。因为一个不确定的值,ListView会频繁调用多次getView去确定其高度和渲染。

    2.5K20

    Android项目实战(十六):QQ空间实现(一)—— 展示说说中的评论内容并有相应点击事件

    (即点击文字“白雪公主”/“小矮人”,就可以进入到这俩用户相应个人主页) 2、点击 回复的文字,就可以对回复人进行回复(即点击评论中回复的内容“你们好啊~”,便对弹出一个编辑框对回复人“白雪公主”进行回复...作为一个android开发者,我们要实现对一个TextView : 1、点击不同的文字部分(文字个数还不确定)有相应的响应操作(进入个人主页等等) 2、一个TextView中某些文字有不同的颜色 下面学习如何实现...RecyclerView实现更好 2、每一个item 内部 ,评论文字部分 用不可以滑动的ListView(RecyclerView理论上更棒,反正不可以滑动就行了)来展示 (博主一开始想的是用LinearLayout...内部 动态添加TextView来展示,经测试,太麻烦且易出错) 不可滑动的ListView 代码 --> 自定义不可滑动的ListView和GridView ---------------------...-------------------------------------------------------------- 下面用一个Demo来学习如何实现说说评论的效果: 首先布局文件,就一个不可滑动的

    2K70

    Android项目实战(十六):QQ空间实现(一)—— 展示说说中的评论内容并有相应点击事件

    (即点击文字“白雪公主”/“小矮人”,就可以进入到这俩用户相应个人主页) 2、点击 回复的文字,就可以对回复人进行回复(即点击评论中回复的内容“你们好啊~”,便对弹出一个编辑框对回复人“白雪公主”进行回复...作为一个android开发者,我们要实现对一个TextView : 1、点击不同的文字部分(文字个数还不确定)有相应的响应操作(进入个人主页等等) 2、一个TextView中某些文字有不同的颜色 下面学习如何实现...RecyclerView实现更好 2、每一个item 内部 ,评论文字部分 用不可以滑动的ListView(RecyclerView理论上更棒,反正不可以滑动就行了)来展示 (博主一开始想的是用LinearLayout...内部 动态添加TextView来展示,经测试,太麻烦且易出错) 不可滑动的ListView 代码 --> 自定义不可滑动的ListView和GridView ---------------------...-------------------------------------------------------------- 下面用一个Demo来学习如何实现说说评论的效果: 首先布局文件,就一个不可滑动的

    2.7K60

    Android开发之自定义的ListView(UITableViewController)

    在博客的第一部分,我们先使用一下AndroidSDK中预定义的一种ListView,当然还有其他种,但是我们使用最简单的,也就是Cell上只有一个标题。开始我们这第一部分的正题。 1....创建模拟数据 ListView上显示的是一个数据的集合,所以我们要先创建一个Array, 其中存放着在ListView上显示的数据。...下方是运行后的效果,我参与项目开发时,做的是iOS版本,接下来看下Android开发中要实现下方的一个ListView应如何去实现呢。 ?...在iOS开发中,如果想分析其他App中的UI实现方式,可以使用一个叫Reveal的神器,至于安卓中有木有类似强大的UI分析神器,我就不可而知了。...如果你想给每个Cell都加上点击事件,换句话说,你想在点击Cell时做一些事情,那么你需要为ListView的每个item添加点击事件,为每个Cell添加点击事件的代码如下所示,点击Cell是我们就使用

    1.4K80

    Android 购物车功能的实现

    首先,众所周知,ListView是Android最常用的控件,可以说是最简单的控件,也可以说是最复杂的控件。 作为一个Android初级开发者,可能会简单的ListView展示图文信息。...作为一个有一定项目开发经验的Android开发者来说,可能会遇到ListView的列表项中存在各种按钮的需求。 需求最多的就是购物车功能。...,是适配器 还是 Activity或者Fragment 2、如何知道你点击的按钮是哪一个列表项中的 3、点击某个按钮的时候,如果列表项所需的数据改变了,如何更新UI 4、列表项中存在会获取焦点的各种按钮...:Android接口回调机制 一个ListView数据展示的实现,必须要有的 自定义适配器,数据源,ListView,列表项布局 做一个Demo,看下效果 (1)、效果一,点击商品添加删除数量,后面的商品总价随之变化...毕竟购物车中加一个编辑框也很少见 最后,一个实际的购物车,当然还需要显示当前的总金额,包含“去结算”按钮的功能的那一个框,这不属于ListView 如图: ?

    2.8K50

    Android开发笔记(三十八)列表类视图

    2、定义了一个数据观察者AdapterDataSetObserver,用于在列表数据发生变化时,可以通过notifyDataSetChanged方法来更新视图。...注意如果divider设置为@null时,就不可将dividerHeight设置为大于0dp的数值,因为这样可能导致末尾的元素显示不全。...ListView使用的适配器一般继承自BaseAdapter。 setOnItemClickListener : 设置点击事件的监听器。...该方式无需在代码中获取ListView的对象,直接调用setListAdapter方法设置适配器,同时实现ListActivity的点击方法onListItemClick来响应点击事件。...该方式要从布局文件中获取ListView的对象,然后调用该对象的setAdapter方法设置适配器,并调用ListView对象的setOnItemClickListener方法来设置点击事件的监听器。

    2.4K20

    android读取sqlite数据库的数据并用listview显示

    显示 刚刚接触android,老师给了我了几个班级信息的excel,让我做一个考勤的系统出来,本篇仅记录了真机调试下,读取已有静态数据库并显示在listview中。...中 此时问题来了,一个班有60个人,读取到ListView中针对每一个Item都要要求adapter”给我一个视图”(getView),如果一个班有上亿的人要为每一个Item都新建一个视图显然是不可能的...实际上Android为你缓存了视图,Android中有个叫做Recycler的构件,下图是他的工作原理 如果你有10亿个项目(item),其中只有可见的项目存在内存中,其他的在Recycler中。...ListView先请求一个type1视图(getView)然后请求其他可见的项目。convertView在getView中是空(null)的。...当item1滚出屏幕,并且一个新的项目从屏幕低端上来时,ListView再请求一个type1视图。convertView此时不是空值了,它的值是item1。

    2.4K20

    Android事件分发机制完全解析,带你从源码的角度彻底理解(上)

    比如说你当前有一个非常简单的项目,只有一个Activity,并且Activity中只有一个按钮。...那当我们去点击按钮的时候,就会去调用Button类里的dispatchTouchEvent方法,可是你会发现Button类里并没有这个方法,那么就到它的父类TextView里去找一找,你会发现TextView...由于我们点击了按钮,就会进入到第14行这个if判断的内部,然后你会发现,不管当前的action是什么,最终都一定会走到第89行,返回一个true。 是不是有一种被欺骗的感觉?...因为ImageView和按钮不同,它是默认不可点击的,因此在onTouchEvent的第14行判断时无法进入到if的内部,直接跳到第91行返回了false,也就导致后面其它的action都无法执行了。...为什么给ListView引入了一个滑动菜单的功能,ListView就不能滚动了?

    50510
    领券