全屏 RecyclerView 图像滑块
Posted
技术标签:
【中文标题】全屏 RecyclerView 图像滑块【英文标题】:RecyclerView image slider with full screen 【发布时间】:2018-01-14 13:45:28 【问题描述】:我的 recyclerview 列表项包含三个图像和其他组件。
<LinearLayout
android:id="@+id/image_view_items"
android:layout_
android:layout_
android:orientation="horizontal"
android:layout_marginTop="3dp"
android:padding="5dp"
android:weightSum="3"
android:visibility="visible"
android:minHeight="100dp">
<ImageView
android:layout_
android:layout_
android:layout_weight="1"
android:scaleType="fitXY"
android:layout_gravity="center"
android:src="@drawable/car02"
android:padding="2dp"
/>
<ImageView
android:layout_
android:layout_
android:layout_weight="1"
android:layout_gravity="center"
android:scaleType="fitXY"
android:src="@drawable/car01"
android:padding="2dp"
/>
<ImageView
android:layout_
android:layout_
android:layout_weight="1"
android:layout_gravity="center"
android:scaleType="fitXY"
android:src="@drawable/car03"
android:padding="2dp"
/>
</LinearLayout>
我的每个列表项都有这三个水平图像。
在回收站 onBindViewHolder 中。我在下面添加了几行
@BindView(R.id.image_view_items)
LinearLayout imageHolder;
viewholder.imageHolder.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
// open activity of page viewer
//Log.i("Item", "Clicked");
);
public class ImagePagerAdapter extends PagerAdapter
private int[] images = R.drawable.car01, R.drawable.car02, R.drawable.car03;
Context mContext;
LayoutInflater mLayoutInflater;
public ImagePagerAdapter()
super();
....
当我单击列表项上的图像时,图像应该会弹出到全屏并且应该能够滑动三个图像,并且当我拖动全屏视图时它应该关闭。 (就像帖子图片上的 facebook 图片全屏滑块视图)
如何将特定的列表项图像传递给活动? 图片加载后。我需要如何传递图像引用以快速加载?
谢谢。
【问题讨论】:
我认为您应该使用 viewpager 调用 Activity。并将 transitionAnimation 添加到您的 imageView。 你得到了你需要的东西吗? 【参考方案1】:在RecyclerView
适配器onBindViewHolder()
;
在您为行设置图像的位置,只需创建一个 ArrayList 并在该 arrayList 上添加三个图像。它会在按位置设置每一行中的图像时添加图像并将arrayList
传递给您的@ 987654326@
并将Listner设置在onBindViewHolder():
内
holder.itemView.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
//call Viewpager here
);
ViewPager 参考 :View translation in sliding a ViewPager
【讨论】:
保持三个图像原样并通过 onclick 的 java 代码创建 ViewPager ?我需要删除三个图像并在线性布局中添加 viewpager 吗? 您只需要添加,当您返回并再次单击新行时会自动获取图像的新值。 如何在arraylist中添加图像并按每一行区分并传递给查看器?任何示例? github.com/MrWangChong/DragPhotoView 显示在视图中添加图像视图并传递给活动。我认为这是一个干净的例子。以上是关于全屏 RecyclerView 图像滑块的主要内容,如果未能解决你的问题,请参考以下文章