Java 使3个视图可见,然后根据条件隐藏其他视图
我在Java上有一个RecyclerView项目,其中包含几个基于某些条件可见的图像。但是,我注意到,如果满足大多数条件,许多图像将可见,并且将超出其父布局的范围 以下说明了我的意图: RecyclerView中的每个图像的工作代码都很简单,例如:Java 使3个视图可见,然后根据条件隐藏其他视图,java,android,imageview,android-recyclerview,Java,Android,Imageview,Android Recyclerview,我在Java上有一个RecyclerView项目,其中包含几个基于某些条件可见的图像。但是,我注意到,如果满足大多数条件,许多图像将可见,并且将超出其父布局的范围 以下说明了我的意图: RecyclerView中的每个图像的工作代码都很简单,例如: if (iJobType == 1) { imageView1.setVisibility(View.VISIBLE) } else { imageView1.setVisibility(View.GONE) } if (iJobType
if (iJobType == 1) {
imageView1.setVisibility(View.VISIBLE)
} else {
imageView1.setVisibility(View.GONE)
}
if (iJobType == 2) {
imageView2.setVisibility(View.VISIBLE)
} else {
imageView2.setVisibility(View.GONE)
}
但是,我不确定在满足3个条件后如何仅显示3个图像。假设给定的iJobType是1,2,3,4,5,6;这意味着6个图像将显示基于这样的条件,但现在我只需要3个图像显示
我希望它足够清楚,请随意在下面留下评论,以便更好地理解这一点。干杯 在这种情况下,我要做的是: 首先,我将在适配器类中使用的对象类中创建一个getter setter boolean isConditionmeet e、 g.列表在适配器类中用作:
private ArrayList<MyObject> list;
现在,每当条件满足以显示项时,我将为该项设置setconditionMeet(true),而为其他项设置conditionMeet为false。最后更新适配器以获得UI中的更改。在这种情况下,我要做的是: 首先,我将在适配器类中使用的对象类中创建一个getter setter boolean isConditionmeet e、 g.列表在适配器类中用作:
private ArrayList<MyObject> list;
现在,每当条件满足以显示项时,我将为该项设置setconditionMeet(true),而为其他项设置conditionMeet为false。最后更新适配器以获得UI中的更改。您需要检查图像宽度和屏幕宽度。喜欢在每次设置.setVisibility(Visible)时,增加occupiedSpace变量并检查total available。差不多that@Farhan这真的很有道理!谢谢你的建议!也许可见性不是最好的选择。您应该尝试根据可用空间增加getItemCount()。因此,适配器仅在有空格时调用bindViewHolder(VH holder,int position)即使有3个以上的条件,您是否只想显示3个图像??如果是,那么其他的图像呢?你也要显示吗?你需要检查你的图像宽度和屏幕宽度。喜欢在每次设置.setVisibility(Visible)时,增加occupiedSpace变量并检查total available。差不多that@Farhan这真的很有道理!谢谢你的建议!也许可见性不是最好的选择。您应该尝试根据可用空间增加getItemCount()。因此,适配器仅在有空格时调用bindViewHolder(VH holder,int position)即使有3个以上的条件,您是否只想显示3个图像??如果是,那么其他的图片呢,你也要展示吗??