【发布时间】:2012-03-18 12:41:40
【问题描述】:
首先,我是 Android 的新手,并且是自学的,所以我不要求你为我编写代码。只需给我一些术语、主题或要研究的主题,我就会阅读书籍并弄清楚。
我正在制作一个应用程序,用户可以通过按下按钮或选择图像来设置屏幕上显示的内容。我知道如何做到这一点的唯一方法是让 onClickListener 设置一个变量并使用 switch 语句来显示与所选变量相对应的 imageView。
示例:
//on click listeners set variable userPic1 and userPic2
switch(userPic1){
case 1:
pic11.setVisibility(View.VISIBLE);
pic12.setVisibility(View.GONE);
pic13.setVisibility(View.GONE);
pic14.setVisibility(View.GONE);
break;
case 2:
pic11.setVisibility(View.GONE);
pic12.setVisibility(View.VISIBLE);
pic13.setVisibility(View.GONE);
pic14.setVisibility(View.GONE);
break;
case 3:
pic11.setVisibility(View.GONE);
pic12.setVisibility(View.GONE);
pic13.setVisibility(View.VISIBLE);
pic14.setVisibility(View.GONE);
break;
case 4:
pic11.setVisibility(View.GONE);
pic12.setVisibility(View.GONE);
pic13.setVisibility(View.GONE);
pic14.setVisibility(View.VISIBLE);
break;
}
switch(userPic2){
case 1:
pic21.setVisibility(View.VISIBLE);
pic22.setVisibility(View.GONE);
pic23.setVisibility(View.GONE);
pic24.setVisibility(View.GONE);
break;
case 2:
pic21.setVisibility(View.GONE);
pic22.setVisibility(View.VISIBLE);
pic23.setVisibility(View.GONE);
pic24.setVisibility(View.GONE);
break;
case 3:
pic21.setVisibility(View.GONE);
pic22.setVisibility(View.GONE);
pic23.setVisibility(View.VISIBLE);
pic24.setVisibility(View.GONE);
break;
case 4:
pic21.setVisibility(View.GONE);
pic22.setVisibility(View.GONE);
pic23.setVisibility(View.GONE);
pic24.setVisibility(View.VISIBLE);
break;
}
}
我觉得可能有更好的编码方式,但更大的问题在于我的 XML 布局。我将所有这些图像视图堆叠在一起,很难看到它们的外观,因为它只是一团糟。
感谢任何帮助
【问题讨论】:
-
感谢您的帮助,我一直在测试 viewFlipper 和使用数组,并认为这两种方法在我的应用程序中的运行都会比我的原始代码好得多。
标签: android android-layout visibility