我们知道Android中的主要活动,Eclipse称为MainActivity.java
实际上我有两个活动,第二个是:Page2Activity.java
我的布局也有一个Page2.xml。
我想知道如何在按下按钮时切换到Page2Activity.java?因为只显示了Page2.xml,当我点击按钮播放声音时,第二页上没有任何反应。
MainActivity.java
...
bpage2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
setContentView(R.layout.page2);
}
});
...
当我按下此按钮时,会显示page2.xml,但它包含来自Page2Activity.java的声音,当我按下按钮时,声音将无法播放。您能否告诉我如何在布局页面2中加载Page2Activity.java?
此致 亨利克
答案 0 :(得分:2)
您必须在按钮的单击操作上触发事件,并在其侦听器上启动page2 Activity。
bpage2.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(MainActivity.this, Page2Activity.class);
startActivty(i);
});
答案 1 :(得分:1)
点击你的 bpage2 -Button时,为什么不启动其他活动 Page2Activity ?
将它放在你的监听器而不是 setContentView(R.layout.page2); :
Intent intent = new Intent(this, Page2Activity.class);
startActivity(intent);
调用 setContentView()设置活动的布局 - 这就是您在单击按钮后看到其他布局的原因。所以你所做的只是切换布局,但缺少逻辑(例如附加的侦听器),需要实现。这就是声音无法播放的原因。布局与逻辑共存,但它与逻辑无关。包含xml-layout并不意味着你也包含了逻辑。 查看片段http://developer.android.com/guide/components/fragments.html。
另外,请看一下如何从另一个活动开始活动的介绍:http://developer.android.com/training/basics/firstapp/starting-activity.html。
也许你应该从这里开始http://developer.android.com/guide/components/activities.html:)
祝你好运。