2015-05-20 5 views
-4

Мне нужно сделать две кнопки с onClick.That две кнопки должны быть расположены в одном месте. Кнопка для запуска функции записи голоса onClick и еще одна кнопка для остановки функции onClick.is it возможное? Если я получу какое-либо предложение, это будет полезно для меня. Благодарю вас.две кнопки с onClick в одном и том же месте

Я искал много сообщений SO и tutorial.I не получил его.

+1

Я думаю, что вы хотите на кнопку, когда пользователь нажимает начать текст следует изменить, чтобы остановить и вице Верно? – apk

+0

@apk no.one кнопка для остановки функции с помощью onClick и еще одна кнопка для запуска функции с использованием onclick – user10

+1

почему вы не используете одну кнопку, не нужно использовать две кнопки – apk

ответ

1

Попробуйте с чем-то вроде этого:

public class MyActivity extends Activity { 
    Button buttonStart; 
    Button buttonStop; 

    protected void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 

     setContentView(R.layout.content_layout_id); 

     buttonStart = (Button) findViewById(R.id.buttonStart); 
     buttonStop = (Button) findViewById(R.id.buttonStop); 
     buttonStart.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       // Perform action on click 
       //for example mediaPlayer.start(); if you have a media player 
      } 
     }); 
     buttonStop.setOnClickListener(new View.OnClickListener(){ 
      public void onClick(View v){ 
       //do what you want - for example mediaPlayer.stop(); 
      } 
     }); 
    } 
} 

После Вашего комментария: используйте одну кнопку и проверить, если он находится в режиме записи, например:

public class MyActivity extends Activity { 
    Button button; 
    boolean isRecording = false; 

    protected void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 

     setContentView(R.layout.content_layout_id); 

     button = (Button) findViewById(R.id.myButton); 
     button.setText("Start"); 
     button.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       // Perform action on click 
       if(isRecording == fasle){ 
        //start recording 
        isRecording = true; //set the variable to know that it is recording 
        button.setText("Stop"); 
       } else { 
        //stop recording 
        isRecording = false; //set the variable to know that it is not recording 
        button.setText("Start"); 
       } 
      } 
     }); 
    } 
} 
+0

две кнопки должны быть расположены в одном месте. Это мой вопрос – user10

+0

взгляните на мой EDIT –

0

Если вы хотите точно так же (т.е. 2 кнопки)

Вы можете использовать relativelayout и добавить обе кнопки внутри него.

Вы можете показать/скрыть их программно, как:

public void onClick(View v) 
    { 
     switch(v.getId()) { 
     case R.id.btn1: 
     btn1.setVisibility(View.GONE); 
     btn2.setVisibility(View.VISIBLE); 
    break; 

    case R.id.btn2: 
    btn2.setVisibility(View.GONE); 
    btn1.setVisibility(View.VISIBLE); 
    break; 
    } 
} 

В противном случае you can even use one button for both the functionalities (start and stop), как -

public void onClick(View v) 
    { 
    if(btn1.getText().toString().equalsIgnoreCase("start")) 
    { 
     btn1.setText("stop"); 
     mp2.start(); 
     musicPlaying = true; 
    } 
    else if(btn1.getText().toString().equalsIgnoreCase("stop")) 
    { 
     btn1.setText("start"); 
     mp2.stop(); 
     musicPlaying = false; 
    } 
} 
+0

одну кнопку с запуском и остановкой! можете ли вы показать мне ссылку? – user10

+0

@ user10 проверить сейчас .... добавил примеры для каждого из двух вариантов. – NarendraJi

+0

проверьте это. Я уверен, это сработает для вас. – NarendraJi