有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使3个视图可见,然后根据条件隐藏其他视图

我在Java上有一个RecyclerView项目,其中包含几个基于某些条件可见的图像。但是,我注意到,如果满足大多数条件,许多图像将可见,并且将超出其父布局的范围

以下说明了我的意图: What's happening VS Expectation

RecyclerView中的每个图像的工作代码都很简单,例如:

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个图像显示

我希望它足够清楚,请随意在下面留下评论,以便更好地理解这一点。干杯


共 (1) 个答案

  1. # 1 楼答案

    在这种情况下,我要做的是:

    首先,我将在适配器类中使用的对象类中创建一个getter setter boolean isConditionmeet

    例如,列表在适配器类中用作:

     private ArrayList<MyObject> list;
    

    和对象类:

    public class MyObject
    {
      private boolean conditionMeet;
    
      public boolean isconditionMeet()
      {
        return conditionMeet;
      }
    
      public void setconditionMeet(boolean conditionMeet)
      {
        this.conditionMeet = conditionMeet;
      }
    }
    

    现在,每当条件满足以显示项时,我将为该项设置setconditionMeet(true),而为其他项设置conditionMeet为false。最后更新适配器以获取UI中的更改