我在Android应用中使用水平RecyclerView 一次在屏幕上显示两个项目(ImageViews)。
为此,我将每个ImageView的宽度设置为适配器的ViewHolder类中屏幕的一半:
public static class ViewHolder extends RecyclerView.ViewHolder {
private LinearLayout ll_Img;
private ImageView iv_ad;
private ViewHolder(View v) {
super(v);
ll_Img = (LinearLayout) itemView.findViewById(R.id.ll_Img);
ll_Img.getLayoutParams().width = (Utils.getScreenWidth(itemView.getContext()) / 2);
iv_ad = (ImageView) v.findViewById(R.id.iv_main_ad);
}
}
获得屏幕宽度:
public static int getScreenWidth(Context context) {
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int screenWidth = size.x;
return screenWidth;
}
它工作正常,但我想在iOS上实现滚动效果,
每次滑动滚动一个项目,
因此,每次滑动后,2个项目必须符合屏幕宽度。
顺便说一下,两个视频价值1000字左右 所以我现在在这里: https://drive.google.com/file/d/0B7j1Rf_oUEbLOWk1OUtpWXFpcEE/view?usp=sharing
我想要实现的目标(正如我的同事在iOS上实现的那样): https://drive.google.com/file/d/0B6B-4-ITg1EQTElNTWsxMWg4aWs/view?usp=sharing
赞赏每条建议。
答案 0 :(得分:1)
这是一个viewpager,而不是recyclerview。此链接可能会有助https://commonsware.com/blog/2012/08/20/multiple-view-viewpager-options.html
只是为了其他人的利益:
<input type="text" name="frmDateReg" required id="frmDate" > <script> function getDate(){ var todaydate = new Date(); var day = todaydate.getDate(); var month = todaydate.getMonth() + 1; var year = todaydate.getFullYear(); var datestring = day + "/" + month + "/" + year; document.getElementById("frmDate").value = datestring; //don't need () } document.getElementById("frmDate").onload = getDate(); </script>
返回0到1之间的浮点数, 表示给定的ViewPager宽度部分 页面应该占用。默认情况下,页面宽度为1,但是 覆盖它,你可以在屏幕上有多个页面 同时进行。
答案 1 :(得分:0)
不完全确定这是否会产生预期的效果,但是如果你使用的是linearlayoutmanager,你可以在recyclelerview中添加一个scrolllistener,每当调用它时,使用linearlayout的方法scrollToPosition强制它一直滚动到下一个项目。