Android 在Listview中设置可见性时出现问题&;基本适配器
我正在制作一个自动签名列表视图。每次我打电话之前Android 在Listview中设置可见性时出现问题&;基本适配器,android,listview,adapter,Android,Listview,Adapter,我正在制作一个自动签名列表视图。每次我打电话之前 mAdapter.notifyDataSetChanged(); 我用一个进度圈切换列表中的最新项目 /** * displays a progress banner instead of the last item. * @param reload boolean */ protected void showReloadView(boolean reload){ View it
mAdapter.notifyDataSetChanged();
我用一个进度圈切换列表中的最新项目
/**
* displays a progress banner instead of the last item.
* @param reload boolean
*/
protected void showReloadView(boolean reload){
View item = mListView.getChildAt(onLastItem);
//View item = mListView.getAdapter().getView(onLastItem, null, null);
content = item.findViewById(id.itemContent);
loading = item.findViewById(id.itemLoading);
if(reload){
content.setVisibility(View.GONE);
loading.setVisibility(View.VISIBLE);
}else{
content.setVisibility(View.VISIBLE);
loading.setVisibility(View.GONE);
}
我这里的问题是,我正在将SDK中提到的视图作为EfficientAdapter进行回收。
因此,我的ListView对象当前包含的项不超过8项(因为没有更多可见项)
第一次运行是正常的,因为“onLastItem”是7(可见项-1),但是第二次运行
ListView.getChildCount()
只返回6个项目。那么为什么我的ListView越来越小?因为可见度,你走了?
我做错了吗
我也尝试过使用未注释的行。我的适配器知道列表的实际大小,我甚至可以获得视图。但是在这些视图上设置可见性没有效果
提前Thx
那么为什么我的ListView越来越小?
因为可见度,你走了
这是我的猜测,但您必须查看ListView
的实现才能确定
FWIW,我采用了与之相反的方法--我将ListView
单独保留,并使用一个装饰适配器来处理获取更多数据的操作
那么为什么我的ListView越来越小?
因为可见度,你走了
这是我的猜测,但您必须查看ListView
的实现才能确定
FWIW,我采用了与之相反的方法--我不使用列表视图
,而是使用一个装饰适配器来处理获取更多数据。在观看之后,我解决了问题
由于Listview只包含可见视图,因此我将代码更改为:
View item = mListView.getChildAt(mListView.getChildCount()-1);
将视图保存到字段,更新数据集后,我可以切换回布局。
经过测试,效果完美
谢谢您抽出时间。看了之后,我解决了这个问题
由于Listview只包含可见视图,因此我将代码更改为:
View item = mListView.getChildAt(mListView.getChildCount()-1);
将视图保存到字段,更新数据集后,我可以切换回布局。
经过测试,效果完美
谢谢你抽出时间