我注意到新的RecyclerView类,虽然它使事情变得更清洁,但缺乏我熟悉的许多功能:
这些是我使用的,但也许还有其他我错过了.
是否有任何教程或一些指导如何替换这些东西?
android android-listview android-gridview android-recyclerview
我正在使用Firebase Recycler Adapter(Firebase UI库)来填充Recycler View.我想在条件上隐藏项目(行).我有一个包含回收者视图的LinearLayout.
我在populateViewHolder()循环器视图适配器的方法中将线性布局可见性设置为Gone .
@Override
protected void populateViewHolder(UsersViewHolder viewHolder, User user, int position) {
if (user.getUserEmail().equals(Utils.decodeEmail(userEmail))) {
viewHolder.llMain.setVisibility(View.GONE);
return;
}
viewHolder.tvUserEmail.setText(user.getUserEmail());
}
Run Code Online (Sandbox Code Playgroud)
它隐藏了LinearLayout,但行仍留有空白.
是否有任何方法我应该覆盖以克服这个或有什么方法来实现结果?
android firebase android-recyclerview firebase-realtime-database firebaseui
我有一个RecyclerView(R.id.recyclerView),其中每一行都有一个图像(R.id.row_image)和一个TextView.我想点击第一行中的图片.
我试过使用onData(..)但似乎没有用.
我有这个问题 - 只是为了测试目的,我添加ParseFile到ParseObject收到列表中的一个.它不是仅显示在该行中,而是显示每4-5行,有时更多,有时更少.我认为回收视图与此有关.奇怪的是,其他数据(从这个例子中删除)适用于position变量.
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
if(parseList.get(position).get("logo") != null){
ParseFile image = (ParseFile) parseList.get(position).get("logo");
String url = image.getUrl();
Glide.with(context)
.load(url)
.placeholder(R.drawable.piwo_48)
.transform(new CircleTransform(context))
.into(holder.imageView);
}
}
Run Code Online (Sandbox Code Playgroud) android parse-platform recycler-adapter android-recyclerview android-glide
我使用listview了以下条目属性:
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:entries="@array/fi"/>
Run Code Online (Sandbox Code Playgroud)
现在我正在将其转换为 RecyclerView
<android.support.v7.widget.RecyclerView
android:id="@+id/rv"
android:layout_width="match_parent"
android:layout_height="match_parent" />
Run Code Online (Sandbox Code Playgroud)
我想知道我们是否有android:entries属性RecyclerView?或者任何其他属性而不是条目?
我在ScrollView中有一个RecyclerView(和一些其他视图).目前,RecyclerView的布局非常小(它显示了它包含的5个中的2个项目)并且它独立于ScrollView滚动,这显然不是很好的用户体验.我想让RecyclerView不滚动和扩展,以便所有项目都可见.
(我知道在这种情况下使用RecyclerView是愚蠢的.我只是这样做,因为应用程序中的其他地方我需要一个普通的RecyclerView滚动等但是同样的内容,我不想重复代码).
我正在尝试将我的应用程序从listview升级到recyclerview.当我使用listview时,我使用本教程在listview中嵌入了广告.
我无法在recyclerview中添加它.有关如何在Recyclerview中完成此操作的任何观点?
目前在我的列表视图中,加载广告的代码如下:
if ((position % k) == 0) {
if (convertView instanceof AdView) {
return convertView;
} else {
// Create a new AdView
AdView adView = new AdView(activity, AdSize.BANNER,
ADMOB_ID);
float density = activity.getResources().getDisplayMetrics().density;
int height = Math.round(AdSize.BANNER.getHeight() * density);
AbsListView.LayoutParams params = new AbsListView.LayoutParams(
AbsListView.LayoutParams.FILL_PARENT,
height);
adView.setLayoutParams(params);
adView.loadAd(new AdRequest());
return adView;
}
} else {
return delegate.getView(position - (int) Math.ceil(position / k) - 1,
convertView, parent);
}
Run Code Online (Sandbox Code Playgroud)
它应该是这样的:

更新:从谷歌引用此视频,它给出了完整的解释
android listview android-appcompat admob android-recyclerview
我有一个带有gridlayout的recyclerview.我想要的是当用户滚动到列表的末尾时(请参阅我的坏模型),应该有一个高度为50dp的空白空间,这与我的网格尺寸不同.
请注意,此空间仅在最末端可见,因为我不想更改布局.我可以这样做,以便recycerview的边距为50dp,但我不想这样做.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fab="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:scrollbars="vertical"
/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) android android-layout android-gridlayout android-recyclerview
CardView通常用于装饰一个元素.但有时你需要将几个项目包装到这个小部件中.例如,在收件箱应用程序中.

那么最好的方法是什么?它可以通过自定义LayoutManager甚至自定义ItemDecoration来实现.自定义LayoutManager的实现不是一件容易的事(完全支持动画,项目装饰等).在第二个选项中,必须手动实现边界的绘制,忽略CardView(和Android-L提升)实现.
只有两个布局管理器RecyclerView:LinearLayoutManager和GridLayoutManager.有没有办法TableLayout用作布局管理器RecyclerView?有什么建议吗?
编辑:我想知道是否有任何解决方案没有从零编写布局管理器.TableLayout行为对我来说已经足够了,只想为处理大量数据时的性能问题添加回收功能.
并且创建一个查看listview的表并不能解决我的问题,因为我的表非常动态,我甚至不知道列名,客户决定表的所有细节.因此,单元格是自定义的,列宽需要根据内容长度自动调整大小.我不认为listview可以处理这个问题.
在此先感谢您的帮助.