ListView添加headview
1、头部view:设置view的点击时间,用于屏蔽listview的item的点击事件
View headerView = getLayoutInflater().inflate(R.layout.listhead, null);Button btn = (Button) headerView.findViewById(R.id.button1);btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {Toast.makeText(MainActivity.this, bn, Toast.LENGTH_SHORT).show();}});
2、添加头部view:必须放在setAdapter前面不然会报错
lv.addHeaderView(headerView);
3、listview填充假数据
List> list = new ArrayList>();HashMap map = new HashMap();map.put(tv, tv);list.add(map);list.add(map);list.add(map);list.add(map);list.add(map);list.add(map);
SimpleAdapter sa = new SimpleAdapter(this, list, R.layout.item_lv,new String[] { tv }, new int[] { R.id.tv });
4、设置适配器:如果listview不设置适配器,headview也不会显示的
lv.setAdapter(sa);
5、设置item点击事件
lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView arg0, View arg1,int position, long id) {//position 如果有headview position =0 的第一个为headviewToast.makeText(MainActivity.this, position: + position,Toast.LENGTH_SHORT).show();//id:如果有headview或者footview 则这两个view的id为-1if (id == -1) {Toast.makeText(MainActivity.this, head: + id,Toast.LENGTH_SHORT).show();} else {Toast.makeText(MainActivity.this, id: + id,Toast.LENGTH_SHORT).show();}}});
main.java全部代码:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;public class MainActivity extends Activity {ListView lv;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);lv = (ListView) findViewById(R.id.listView1);// 头部view:设置view的点击时间,用于屏蔽listview的item的点击事件View headerView = getLayoutInflater().inflate(R.layout.listhead, null);Button btn = (Button) headerView.findViewById(R.id.button1);btn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {Toast.makeText(MainActivity.this, bn, Toast.LENGTH_SHORT).show();}});// 添加头部view:必须放在adapter前面不然会报错lv.addHeaderView(headerView);// 假数据List> list = new ArrayList>();HashMap map = new HashMap();map.put(tv, tv);list.add(map);list.add(map);list.add(map);list.add(map);list.add(map);list.add(map);SimpleAdapter sa = new SimpleAdapter(this, list, R.layout.item_lv,new String[] { tv }, new int[] { R.id.tv });// 设置适配器:如果listview不设置适配器,headview也不会显示的lv.setAdapter(sa);// 设置item点击事件:lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView arg0, View arg1,int position, long id) {//position 如果有headview position =0 的第一个为headviewToast.makeText(MainActivity.this, position: + position,Toast.LENGTH_SHORT).show();//id:如果有headview或者footview 则这两个view的id为-1if (id == -1) {Toast.makeText(MainActivity.this, head: + id,Toast.LENGTH_SHORT).show();} else {Toast.makeText(MainActivity.this, id: + id,Toast.LENGTH_SHORT).show();}}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
转载于:https://www.cnblogs.com/uf0-java/p/6225247.html
ListView添加headview相关推荐
- ListView 添加头部 和尾部 布局 (addHeaderView 和 addFooterView)
ListView 添加头部 和尾部 布局 其实很简单 ,listview 暴露的有方法addHeaderView 和 addFooterView 从源码里面可以看到, addHeaderView 和 ...
- android开发 listview 头部 轮播,listview添加的头部布局超过一屏头部内容显示不全...
headView的实际高度超过一个屏幕,但是显示的结果只有一个屏幕,超过一个屏幕高度意外的部分显示不全. 只使用了listView.getRefreshable().addHeadView(headV ...
- Flutter开发之ListView添加HeaderView和FooterView-2(39)
参考文章:RecyclerView添加HeaderView和FooterView 接着Flutter开发之ListView添加HeaderView和FooterView-1 继续研究. 通过Recyc ...
- Flutter开发之ListView添加HeaderView和FooterView(38)
参考文章:Flutter ListView如何添加HeaderView和FooterView flutter的ListView添加HeaderView和FooterView使用CustomScroll ...
- ListView添加项目带序列
ListView添加项目带序列 function AddSelItems(listview1:TListView;ListView2:TListView):Boolean; var s: stri ...
- android listview remove 动画,给Android ListView添加删除item动画
给Android ListView添加删除item动画 给listview删除一个item的时候加上一个折叠动画,感觉效果会好一点. 步骤是当删除一个view,先用动画把view的高度改变,看上去就是 ...
- ListView隐藏右侧滚动条,listview去掉分割线,自定义分割线,ListView添加HeaderView和FooterView
ListView添加HeaderView和FooterView View headerView = LayoutInflater.from(AddwcrrActivity.this).inflate( ...
- delphi listview 添加数据 慢_ListView 的缓存机制
一.前言 ListView 作为一个 Android 5.x 之前的一个用于显示数据列表的控件,或许在今天都已经被 RecyclerView 完全替代,但是其中的缓存机制仍然值得我们去了解,对后面学习 ...
- listview winfrom 表头_c# listview添加表头
2012-03-23 11:37 C# ListView Controlusing System.Windows.Forms; ListView控件添加表头: ColumnHeader h1 = ne ...
最新文章
- 【Groovy】Groovy 脚本调用 ( Groovy 配置文件格式 | Groovy 配置文件读取 | 完整配置文件及解析代码示例 )
- 04.Java 堆内存 新生代 老年代?
- “工业互联网平台“将成为工业制造企业的标配
- matlab eval 不显示,matlab中 eval(command); 运算符无效的问题
- @Value(${xxxx})注解的配置及使用
- 结构体变量和结构体指针变量作为函数参数传递问题
- Kali linux学习入门-安装Kali Linux 后需要做的 20 件事
- 相关性,互相关,自相关,相关系数
- 减速器课程设计指导系统使用方法
- 名悦集团:开电动车会比开燃油车省钱吗?
- 均方距离计算公式_均值、方差、均方值、均方差计算
- 经典Java开发教程 腾讯+字节+阿里面经真题汇总,斩获offer
- 重要的是商业,不是应用(Building a bussiness, not an app)
- 当大叔爱上小萝莉我就爱上了正则表达式(一)
- Apache Zookeeper配置
- 电子信息类的就业前景真的不如计算机吗?
- 正方形里面两个扇形相交部分_边长为1的正方形内,两个扇形,一个半圆,求阴影面积....
- BI是报表?BI是可视化?BI到底是什么?
- 甲基乙烯基硼酸 cas7547-97-9/异环己酰亚胺 cas4538-37-8
- MOS管的源极和漏极是否可以互换使用,场效应管的D极和S极呢?
热门文章
- MySQL默认INFORMATION_SCHEMA,MySQL,TEST三个数据库用途(转)
- hdu 1525 博弈
- bada项目在真机上调试
- Mr.J--正则表达式
- 两个getchar,一个getchar,getch的不同点 出现的不同情况
- 黑马程序员 Java 加强
- tp5 的查询构造器
- coroutine - yield from
- [唐诗]正月十五日夜-苏味道
- obj.href 与 obj.getAttribute(href)的区别