Android-Android listview head里面的控件怎么处理?
如题,listview可以添加进一个head,如果上面添加了一个布局文件,然后布局里有一系列的控件,这些控件的事件响应要怎么处理?到什么地方去处理?
主要是因为listview跟scrollview冲突,所以打算把listview上面的部分给弄到listview的head里面,好达到整个界面的滚动效果
另外,问一下,要用一个已有的布局文件添加到head里面要怎么做?不知道为什么我添加进去的时候就报错
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
head是position0吧?直接在adpter里面通过LayoutInflater去找到view,再通过view找到具体组件来加监听事件不可以嘛?
listview的headview需要用Inflater来添加,下面例子中headButton就是headview布局中的控件。
ListView listview;
protected View mListHeadView = null;
Button headButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initHeadView();
listview = (ListView) findViewById(R.id.listview);
listview.addHeaderView(mListHeadView);
listview.setAdapter(new ListAdapter(this));
}
private void initHeadView(){
if(mListHeadView==null){
mListHeadView=getLayoutInflater().inflate(R.layout.list_view_head, null);
headButton=(Button)mListHeadView.findViewById(R.id.head_button);
}
}
刚好前几天做过类似的。给你看看Demo代码。
View header = LayoutInflater.from(this).inflate(R.layout.header, null);
Button btn_chat = (Button) header.findViewById(R.id.btn_chat);
btn_chat.setOnClickListener(this);
mListV.addHeaderView(header);
然后再onClick事件里面根据对应的id来处理就行了。