listview getChiildAt结果为空

mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

@Override

public void onItemClick(AdapterView<?> parent, View v,

int position, long id) {

for (int i = 0; i < mListView.getCount(); i++) {

View callLogView = mListView.getChildAt(i);

mRelativeLayout = (LinearLayout) callLogView

.findViewById(R.id.myShow);

if (i == position) {

if (mRelativeLayout.getVisibility() == View.GONE) {

mRelativeLayout.setVisibility(View.VISIBLE);

} else {

mRelativeLayout.setVisibility(View.GONE);

}

} else {

mRelativeLayout.setVisibility(View.GONE);

}

}

}

});

代码如上,最后得到的callLogView 是空的,我以前这个就可以得到position所对应的item,其实getChildAt
( int position ) 方法中position指的是当前可见区域的第几个元素。

那要得到position所对应的item咋办? View
itemView = listview.getAdapter().getView(position, null, listview);  这样就能得到l

listview getChiildAt结果为空

时间: 2024-08-06 09:19:24

listview getChiildAt结果为空的相关文章

listview 设置数组为空

listview.setEmpty(View view); 使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户,今日对这个方法进行一下小结,书写的方式有三种: 1.一般情况下,继承ListActivity,只要 <ListView android:id="@id/android:list".../> <TextView android:id="@id/android:empty.../> 当列

50个Android开发技巧(24 处理ListView数据为空的情况)

在移动平台上为用户展示数据的一个经常用法是将数据填充进一个List内,而此时须要注意的一点就是: 原文地址:(http://blog.csdn.net/vector_yi/article/details/24936163) 怎样处理须要填充的数据为空的情况? ListView及其它继承自AdapterView的类都有一个简便的处理这样的情况的方法:setEmptyView(View). 当ListView的Adapter为空或者Adapter的isEmpty()方法返回true的时候,它将会把设

ListView常用优化技巧(Android群英传)

内容是博主照着书敲出来的,博主码字挺辛苦的,转载请注明出处,后序内容陆续会码出. 前言:ListView--列表,它作为一个非常重要的显示方式,不管是在Web中还是移动平台中,都是一个非常好的.不开或缺的展示信息的工具.在Android中,ListView控件接管了这一重担,在大量的场合下,我们都需要使用这个控件.虽然在Android 5.X时代,RecyclerView在很多地方都在逐渐取代ListView,但ListView的使用范围依然非常的广泛,它这万年老大哥的地位也不是轻易就能撼动的.

自定义Adapter的listview(很重要)

首先介绍下MVC:M就是modle,V是view,C是control 把数据通过适配器适配一定格式后,给listview输出 listview相当于一个空的架子,把格式化的数据放出来 LayoutInflater跟findById很像,只是findById是找的控件,LayoutInflater找的是xml文件 自定义流程: 1) mainactivity运行本身的布局文件和listview.setadapter启动adapter,adapter要映射 数据 到 布局 2) 要找到布局要用Lay

android-----带你一步一步优化ListView(二)

上一篇介绍了通常我们优化ListView的方式,但是这点对于要加载大量图片的ListView来说显然是不够的,因为我们知道要想获取一张图片不管是本地的还是网络的,其性能上均没有从内存中获取快,所以为了提升用户的体验度,对于加载图片的ListView,通常我们会通过缓存做以下优化: 基本思想: (1)如果想要加载图片,首先先去内存缓存中查看是否有图片(内存缓存) (2)如果内存缓存中没有,就会去本地SD卡上查找是否存在(SD卡缓存) (3)如果本地SD卡上也没有的话,则会去网络下载了,下载完成之后

cocos代码研究(25)Widget子类PageView学习笔记

基础理论 ListView控件是一个显示滚动项目列表的视图组. 列表项是通过使用addChild或insertDefaultItem插入到列表中的,继承自ScrollView. 代码实践 static ListView * create()创建一个空ListView. void setItemModel (Widget *model)设定一个ListView的模型. 当调用pushBackDefaultItem,该模型将作为一个蓝图,新副本将被插入到ListView控件. void pushBa

Android FragmentStatePageAdapter的使用Demo

上一篇写过FragmentPagerAdapter,这篇来介绍FragmentStatePagerAdapter,那么两者之间有何区别呢: FragmentPagerAdapter更多的用于少量界面的ViewPager,比如Tab.划过的fragment会保存在内存中,尽管已经划过.而FragmentStatePagerAdapter和ListView有点类似,会保存当前界面,以及下一个界面和上一个界面(如果有),最多保存3个,其他会被销毁掉. 如果想要更详细的了解,可以查看官网API,下面给出

android开发之杂记(1)

1,ListView的内容为空时候的处理 使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户 private void setupViews() { LOG.debug(""); mListView = (ListView) findViewById(R.id.list); ((ViewGroup) mListView.getParent()).addView(mErrorView); mListView.setEmptyVi

关于android:listview getChildAt 为空的解释

今天遇到了一个很奇怪的问题,我所设定的一个listview 有10个item,当我的 list.getCount 的数量对其进行for 循环的时候,当到第6个item的时候,得到的view对象却是null,这让我很费解,经过一番查询,明白了这个问题是怎么回事,与大家分享下: 如图片红框部分的listview部分.这其实涉及到android的listview控件的内存处理问题:当我们加载listview时,如果这个listview的数据量比较多,它是显示不完全的,但这时是否是所有的数据都已经加载?