如何从另一个java活动播放声音?

时间:2013-12-27 21:48:27

标签: java android xml eclipse audio

我们知道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?

此致 亨利克

2 个答案:

答案 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:)

祝你好运。