1

アクティビティにトグル ボタンを実装します。そのボタンにサウンド (オンとオフ) を追加したかったのですが、サウンドを追加できません。

これは私が書いたコードです。

public class SoundLayout extends Activity implements OnClickListener
{
Button soundBttnOn;
private String _showText;


@Override

protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.sound_layout);

/** Fetched from the MAIN ACTIVITY */
Bundle bundle = getIntent().getExtras();
if(bundle!=null){
    _showText = bundle.getString("button_click");
}
Log.i("btnClick","button clicked is :"+_showText);
soundBttnOn = (Button) findViewById(R.id.togglebutton);
soundBttnOn.setOnClickListener(this);
}


@Override

public void onClick(View view) {
// TODO Auto-generated method stub
/** make a refernce to store the intent when the view has been clicked*/
Intent intent;  
/** Make cases according to the number of buttons you have in screen
 * In this case, I've added one.*/
switch(view.getId()){

case R.id.togglebutton :
    Log.i("btnClick","Result button is clicked whose id is :"+view.getId());
    /** Intent should be fired from this activity to the other activity*/
    intent = new Intent(SoundLayout.this, Main.class);

    /** Start the intent
     * startActivity(intent);
    this.finish();*/

    break;
}
}

}

ここで、トグル ボタンにサウンドを追加しようとしましたが、サウンド機能を追加できません。「サウンドオン」をクリックすると有効になり、「サウンドオフ」をクリックすると無効になります。

4

3 に答える 3

2

トグル ボタンの setOnCheckedChangeListener を利用できます。これで、ボタンがオンまたはオフの状態にあるかどうかを示すパラメーターを取得します。それに基づいて、メディア プレーヤーを使用して必要なサウンドを再生できます。

ToggleButton tb = (ToggleButton) findViewById(R.id.toggleButton);
    tb.setOnCheckedChangeListener(new OnCheckedChangeListener() {

        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if(isChecked)
                System.out.println("ischecked>>>>>>>>>>>>>>>>>>>>>>>>>.");
            else
                System.out.println("not checked>>>>>>>>>>>>>>>>>>>>>>>>>.");

        }
    });
于 2013-08-09T11:11:51.833 に答える
2

サウンド ファイルを /res/raw (フォルダーの作成後) に配置し、MediaPlayer を使用してサウンドの再生を開始、停止します。

MediaPlayer mp = MediaPlayer.create(getApplicationContext(), R.raw.AudioFile1); mp.start();

そして、mp からすべての start/stop/reset/pause/release メソッドを取得します。

于 2013-08-09T11:00:13.097 に答える