【问题标题】:Make Image Button Behave Like a Toggle Button使图像按钮的行为类似于切换按钮
【发布时间】:2015-02-22 05:58:15
【问题描述】:

如何设置图像按钮的开启和关闭状态?我的目标是在单击图像按钮时播放声音,并在再次单击按钮时停止声音。谢谢!

【问题讨论】:

    标签: java android image button toggle


    【解决方案1】:

    你可以使用事件的。就像点击监听器一样。 为此获取您的 imageViewsetOnClickListener

    ImageView mImageView = (ImageView) findViewById(R.id.sound_imageView);
    Boolean flag = false;
    mImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if(flag) {
                    //play sound
                    flag = false;
                } else {
                    //stop sound
                    flag = true;
                } 
            }
        });
    

    【讨论】:

      【解决方案2】:

      Android 中存在一些Views,它们提供您正在寻找的切换功能。您可能想研究 android.widget.CompoundButton 类的想法,或参考 this tutorial

      【讨论】:

        【解决方案3】:

        您可以手动完成。首先,当您单击按钮时,您将检查音乐是否正在运行。如果它正在运行则停止它,如果它不运行则播放它。 类似的东西——

            imageButton.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if(musicPlayer!=null && musicPlayer.isPlaying()){
                        musicPlayer.stop();
                    }else{
                        musicPlayer=new MediaPlayer();
                        AssetFileDescriptor afd = getActivity().getAssets().openFd("AudioFile.mp3");
                        musicPlayer.setDataSource(afd.getFileDescriptor());
                        musicPlayer.prepare();
                        musicPlayer.start();
                    }
                }
            });
        

        【讨论】:

        • 我怎么会在 .setOnClickListener 上出现错误“无法解析符号 'setOnClickListener'”
        • ImageButton imageButton; imageButton=(ImageButton)findViewById(R.id.playButton);请确保 imageButton 已正确声明并且您已导入 OnClickListner 事件。
        猜你喜欢
        • 2018-03-05
        • 2015-04-16
        • 1970-01-01
        • 2013-06-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多