这是一个基本但重要的问题。我有几个视图和不同的应用程序状态。在一个州,一部分观点是可见的,另一部分消失了。在其他状态下,视图的另一部分是可见的,第一部分已消失。
例如:
private View line1;
private View line2;
private View line3;
private LinearLayout lineral1;
private LinearLayout lineral2;
......
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
line1 = findViewById(R.id.line1);
line2 = findViewById(R.id.line2);
line3 = findViewById(R.id.line3);
lineral1 = findViewById(R.id.lineral1)
lineral2 = findViewById(R.id.lineral2)
}
private void onUIUpdate(int state){
if(state == 1){
line1.setVisibility(View.GONE);
line2.setVisibility(View.GONE);
line3.setVisibility(View.VISIBLE);
lineral1.setVisibility(View.VISIBLE);
lineral2.setVisibility(View.GONE);
}
else{
line1.setVisibility(View.VISIBLE);
line2.setVisibility(View.VISIBLE);
line3.setVisibility(View.GONE);
lineral1.setVisibility(View.GONE);
lineral2.setVisibility(View.VISIBLE);
}
}
这段代码看起来非常蹩脚,你能想象如果你有更多的视图来隐藏/显示。还有另一种更好的方法来控制视图可见性取决于应用程序状态吗?