草庐IT

listView

全部标签

android - 获取从中膨胀 View 的资源 ID

有没有办法获取从中展开View的布局的资源ID(如R.layout.viewtoInflate)?我正在尝试实现一个ListView,它为列表项使用2个自定义布局。使用哪种项目布局取决于用于填充ListView的对象中的字段。我在我的自定义适配器中缺少的是一种方法来了解我在getView()中获得的“convertView”是从什么资源中膨胀的。如果我可以获得该信息,我可以比较并确定我是否可以按原样重新使用转换View,或者是否必须将其替换为当前项目的适当布局。理想情况下应该是这样的:@OverridepublicViewgetView(intposition,ViewconvertV

android - 关于ListView中ViewHolder模式实现优化

所以众所周知的ViewHolder模式使用通常看起来像(ListAdapter):...@OverridepublicViewgetView(finalintposition,ViewconvertView,finalViewGroupparent){finalAlbumalbum=albums.get(position);ViewHolderviewHolder=null;if(convertView==null){convertView=inflater.inflate(R.layout.albums_list_item,null);finalImageViewalbumImage

android - 如何使用 Android 设置带分隔线的自定义 ListView?

我想在我的android应用程序中实现下拉刷新功能,所以我实现了这个库:Android-PullToRefresh.但是,我似乎无法设置自定义样式以编程方式划分。代码很简单:list=(PullToRefreshListView)findViewById(R.id.list);int[]colors={0,0xFF97CF4D,0};list.setDivider(newGradientDrawable(Orientation.RIGHT_LEFT,colors));list.setDividerHeight(1);但是,它抛出此错误:方法setDivider(GradientDraw

java - ListView : Prevent a view from recycling

我有一个使用回收View的ListView。我试图阻止View回收。所以我使用setHasTransientState:android.support.v4.view.ViewCompatJB.setHasTransientState(Viewview,booleanhasTransientState)它在Jellybean版本上运行良好,但在Api我发现了如何像@DanielChow建议的那样设置RecyclerListener。listView.setRecyclerListener(newRecyclerListener(){@OverridepublicvoidonMovedT

java - Android:单击时列表中的项目不会变成橙色?

我的应用程序代码中有一个ListView,单击时使用AdapterView.OnItemClickListener检测点击。问题是,当我单击某个项目时,该项目的背景变为白色,而不是默认的橙色。像这样:此外,当我不使用AdapterView时,点击的项目会毫无问题地变成橙色。如何使点击项目的背景再次变为橙色?编辑:列表布局:main.xmlonCreate():publicvoidonCreate(BundlesavedInstanceState){try{super.onCreate(savedInstanceState);setContentView(R.layout.main);l

android - 如何使用自定义适配器动态更新 ListView?

我有一个创建ListView和CustomAdapter的主要Activity。如果我事先已经创建了List,我可以填充ListView,但是如何使用动态获取的数据填充它?主ActivitypublicclassMainActivityextendsActivity{privateListViewmyListView;privateContextctx;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.MainA

android - 绕过过滤不更新ListView Android的bug

这是代码,我使用了一个自定义适配器,并应用了Filter方法,现在当输入退格键时,ListView不会更新,当一个人从项目Activity切换回来时。我读到它是过滤器中的一个错误,但我该如何绕过它,我知道已经实现了我想要的这种设置的应用程序。publicclassIndexPageActivityextendsActivityimplementsOnItemClickListener{ListViewlistView;EditTexteditTextB;PagesAdapteradapter1;@OverrideprotectedvoidonCreate(BundlesavedInst

安卓 ListView 。如何更改手动选择的项目的背景颜色

你能帮帮我吗?我需要更改由setSelection(intpos)函数手动选择的ListView项目的背景颜色,并且我需要保持新颜色直到新的setSelection调用。我已经阅读了一些关于如何做到这一点的主题,但我仍然没有成功。谢谢! 最佳答案 我已经通过为不同的状态制作多个选择器来实现这一点首先把它放在你的ListView中android:listSelector="@drawable/list_selector"然后在drawable中创建xml文件来控制不同的状态@drawable/list_selector@drawabl

android:stackFromBottom ="true"似乎不能完美工作(带适配器的反向 ListView)

好吧,让我解释一下“不能完美运行”是什么意思。我有一个没有android:stackFromBottom="true"参数的ListView。我还有一个带有常规getItem(position)的ArrayAdapter。我调用我的网络服务器,以asc日期顺序获取数据。这样,列表位置0(顶部)的项目具有最小的日期。我可以滚动顶部->底部。好。我添加了android:stackFromBottom现在我看到您现在可以从bottom->top开始滚动,但是位置0的项目仍然是最上面的项目并且具有最小的日期。所以适配器没有改变它的顺序。解决此问题的唯一方法是更改​​适配器内的getItem(g

android - 如何限制 GridLayout 中 ListView 的高度?

我有一个GridLayout包含一个ListView和一个TextView。添加项目时ListView它将变大,并将其下方的TextView推出屏幕。我认为通过在ListView上设置layout_gravity="fill"根本不会增长,而是占用所有可用空间。如何配置ListView占用可用空间而不是扩大其下方的View并将其推出屏幕?我正在寻找使用GridLayout的解决方案。我知道在我的情况下LinearLayout也可以。然而,这只是一个最小的测试用例说明我的问题。如果可能的话,我不想以编程方式设置高度。 最佳答案 这个答