listview你应该知道的方法

1. 更新ListView中的数据,通过调用BaseAdapter对象的notifyDataSetChanged()方法:

mAdapter.notifyDataSetChanged();

2. 每个listview都有无效的位置,如第一行的前一行,最后一行的后一行,这个无效的位置是一个常量.

ListView.INVALID_POSITION

3. 有时我们需要在程序中通过点击按钮來控制ListView行的选中,这就用到了在程序中如何使用代码來选择ListView项.

mListView.requestFocusFromTouch();
mListView.setSelection(int index);

第一条语句并不是必须的,但是若你ListView項中含有Button,RadioButton,CheckBox等比ListView取得 焦点优先极高的控件时,那么第一条语句是你必須加的.

4. 同样的,若你ListView项中含有Button,RadioButton,CheckBox等比ListView取得 焦点优先级高的控件时,ListView的setOnItemClickListener是不被执行的,这时你需要在你的xml文件中对这些控件添加 android:focusable="false" 注意这条语句要放在xml文件中修改,在代码中使用是无效的.

5. 如何保持ListView的滚动条一直显示,不隐藏呢: xml文件中做如下修改 android:fadeScrollbars="false"

6. ListView本身有自己的按键事件,即你不需要设置方向键的标识,按下方向鍵ListView就會有默认的动作,那如何进行控制,编写自己的onKey呢,你需要在Activity中重写dispatchKeyEvent(KeyEvent event);方法,在这里面定义你自己的动作就可以了

7、如果要增加listView某一个item的点击效果,即点击后更改背景图片,可在activity中继承OnItemClickListener,然后在onItemClick方法中加上:
public void onItemClick(AdapterView<?> parent, View view, int position, long id)
{
// 设置选中item背景图片,选中其它就将之前的置空
if (position == id)
{
View preView = mFilmListView.getChildAt(mItemId); //记录之前点击的id
preView.setBackgroundDrawable(null);
view.setBackgroundResource(R.drawable.图片);
mItemId = position;
}
}
这样就可以有点击Item时的点击效果了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值