【问题标题】:b1 button doesn't workb1按钮不起作用
【发布时间】:2017-07-29 05:46:44
【问题描述】:

我写了一个代码,我不明白为什么按钮 b1 不起作用。请帮我找出原因。如果单击按钮 b1,我希望 mediaplayer mpAlbum 在 mediaplayer mpChoose 之后立即播放。但是在 Mediaplayer mpChoose 完成播放后没有任何反应,尽管按钮 b1 被点击

public class MainActivity extends AppCompatActivity {

private Button b1;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);
    final MediaPlayer mpChoose = MediaPlayer.create(MainActivity.this, R.raw.choose);
    final MediaPlayer mpLetIt = MediaPlayer.create(MainActivity.this, R.raw.letit);
    final MediaPlayer mpAlbum = MediaPlayer.create(MainActivity.this, R.raw.single);

    b1 = (Button) findViewById(R.id.album);

    mpLetIt.start();
    mpLetIt.setNextMediaPlayer(mpChoose);

    b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            mpChoose.setNextMediaPlayer(mpAlbum);
        }
    });

}

}

感谢您的关注!

【问题讨论】:

  • 在什么情况下不起作用?
  • 您是否尝试调试器以了解您是否通过 onClick ?如果是这样,那么你的按钮就可以了。
  • “不起作用”是您告诉我们问题的最少描述性方式。我们不介意读者,所以请详细告诉我们实际问题是什么。
  • 请阅读How to Ask a Good Question。正如其他人所指出的,“不起作用”不是实际的问题描述。另请参阅Why is “Can someone help me?” not an actual question?
  • @EJoshuaS mpAlbum 是一个媒体播放器。所以它是一个控制音频播放的对象。 mpAlbum 应该在 mpChoose 完成后播放,但它没有

标签: java android android-studio android-button


【解决方案1】:

尝试在 onClick 方法中显示 Toast 或日志,看看它是否真的是按钮不起作用,如果它适用于它们,请尝试将您的 MediaPlayer 声明为全局变量。

【讨论】:

  • 我插入了一个 Toast 并没有弹出任何东西,所以按钮不起作用
  • 如果我在这段代码中将 MediaPlayers 声明为全局变量,由于某种原因,应用程序会给我一个消息“不幸的是, 已停止”
  • 尝试删除或注释掉所有的媒体播放器,再做一个按钮,真是奇怪。
【解决方案2】:

问题出在 xml 中。该按钮是不可见的,并且上面有一个 ImageView。现在按钮可以正常工作了。

【讨论】:

    猜你喜欢
    • 2011-12-02
    • 1970-01-01
    • 2014-10-09
    • 2013-06-24
    相关资源
    最近更新 更多