2015-05-17 4 views
-1

Как написать полный код для каждой кнопки, как я сделал для кнопки1? Я хочу, чтобы тот же метод вызывался из нескольких кнопок, как и для кнопки1.Вызов того же метода с нескольких кнопок

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    Button one = (Button) findViewById(R.id.button1); 
    one.setOnClickListener(this); // calling onClick() method 

} 

@Override 
public void onClick(View v) { 
    String phoneNumber = ((EditText) findViewById(R.id.editView4)).getText().toString(); 

    try { 
     { 
      SmsManager.getDefault().sendTextMessage(phoneNumber, null, "A", null, null); 
     } 

    } catch (Exception e) { 
     AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); 
     AlertDialog dialog = alertDialogBuilder.create(); 
     dialog.setMessage(e.getMessage()); 
     dialog.show(); 

    } 
} 


public void Openinformation(View view) { 
    setContentView(R.layout.information); 
} 
} 
+0

что вы хотите сделать точно ??? Вы хотите, чтобы один и тот же метод вызывался с нескольких кнопок или ват? – Pankaj

+0

yes iwant тот же метод, который вызывается с нескольких кнопок, но каждая кнопка будет отправлять другое сообщение, например, кнопка 1 посылает кнопку 2 посылает B и так далее – QasimCool

ответ

0

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

Button one = (Button) findViewById(R.id.button1); 
one.setOnClickListener(this); // calling onClick() method 
Button two = (Button) findViewById(R.id.button2); 
two.setOnClickListener(this); // calling the same onClick() 
0

Вы могли бы иметь пуговицы все используют один и тот же OnClickListener, а затем проверить, какой вид была нажата, чтобы определить, какое сообщение отправить

@Override 
public void onClick(View v) { 
    String phoneNumber = ((EditText) findViewById(R.id.editView4)).getText().toString(); 

    try { 
     String message; 
     if (v.getId() == R.id.button1) { 
      message = "A"; 
     } 
     else if (v.getId() == R.id.button2) { 
      message = "B"; 
     } 

     SmsManager.getDefault().sendTextMessage(phoneNumber, null, message, null, null); 
    } catch (Exception e) { 
     AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); 
     AlertDialog dialog = alertDialogBuilder.create(); 
     dialog.setMessage(e.getMessage()); 
     dialog.show(); 

    } 
} 
Смежные вопросы