我要求在屏幕上显示5张图片&单击指定图像,我将播放音乐3秒钟,然后随机进入下一个活动(或另外5个图像集)。
就像我必须随机显示16种不同的视图(16 * 5图像).....
我已经做过&非常体面地工作。
**为此,我创建了16个活动&相应的16个Xml文件。
我的问题是我可以将这16个XML文件添加到单个Activity而不是16个活动中。我刚刚听说动态添加布局到Activity.But在我的项目中,我必须更改图像集上点击正确的图像并加载新图像,点击... **
简短&简单我想在 SINGLE ACTIVITY ...
上显示来自各种资源的内容 (or)
最好可以参加许多活动吗?
N0te:这可能是一个简单的问题,我是谷歌搜索&在这个网站上搜索过去8天仍然没有结果。所以请帮忙....
Andd,**如果你是极客想给DOWN VOTE,请指明善意的理由.... **
答案 0 :(得分:1)
您可以使用此
setContentView(R.layout.myxmlfile.xml)
在同一活动中加载另一个布局
随机加载,
获取您的第一个和最后一个布局的ID
final int first = R.layout.myfirstLayout.xml;
final int last = R.layout.myLastLayout.xml;
现在在这两个整数之间生成一个随机值。
final int random = (int)(first + (Math.Random()%last));
使用此随机方式加载您的布局
setContentView(random);
要使其正常工作,您必须通过按字母顺序命名来确保您的布局正确排序。
答案 1 :(得分:1)
使用LayoutInflater
类
LayoutInflater layoutInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = layoutInflater.inflate(R.layout.dblayout, null);
setContentView(view);
答案 2 :(得分:0)
int layouts[] = { R.layout.layout1, R.layout.layout2, .... }
setRandomLayout() {
int layout = layouts[random of layouts.length];
setContentView(layout);
}
此外,如果所有布局看起来都相同,我建议使用一个布局,但每个图像使用不同的数据/图像。