Android: Как установить содержимое Редактировать текст с помощью кнопки?

Я новичок в андроиде. Я думаю о внедрении простого калькулятора в android, чтобы овладеть основами Android. Я хочу отобразить клавиатуру с числами и математическими операциями, и когда пользователь нажимает на клавиши, соответствующий номер отображается в текстовом редакторе. Я попытался использовать gettext () и обновить содержимое текста редактирования, но он показывает только содержимое нажатой кнопки. Также как я читаю содержимое кнопки, чтобы выполнять математические операции в коде? Любая помощь приветствуется.

С уважением,

первобытный

Рассмотрение заголовка кнопки, поскольку фактические данные – это что-то, что почти приемлемо, когда вы делаете цифровые кнопки в калькуляторе, поэтому я не знаю, поддерживает ли это «основы Android»;)

Несмотря на;

Вы заявляете, что хотите отобразить соответствующий номер, когда пользователь нажимает клавишу (кнопка?). И тогда вы говорите, что getText просто показывает вам содержимое нажатой кнопки … Разве это не то, о чем вы просите? Возможно, вам потребуется предоставить немного кода и показать нам, что не работает так, как вы планировали. Но если у кнопки есть текст «8», и вы хотите рассматривать это как восемь в математических операциях, вам нужно проанализировать его:

 Integer myNumber = Integer.parse(myButton.getText()); 

… который, конечно же, вызовет исключение, если текст myButton не будет разрешен для целого числа.

ИЗМЕНИТЬ, КАК КОММЕНТАРИЙ

Из объяснения вашей проблемы, которую вы дали в своем комментарии, да, setText() сбрасывает текст до значения, которое оно передается, но вы можете использовать комбинацию этого и getText() если вы просто хотите добавить что-то к текущему стоимость:

 myEditText.setText( myEditText.getText() + " " + myButton.getText() ); 

Чтобы установить содержимое EditText:

 EditText text = (EditText) findViewById(R.id.your_text); text.setText("Display this text"); 

Вместо того, чтобы пытаться вытащить текст из ваших кнопок и использовать его как целое число, я бы просто добавил слушателя кликов для каждого, который «знает» значение своей кнопки:

 Button button = (Button) findViewById(R.id.num_1); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Do something with the value of the button } }); 

Попробуйте использовать следующий код.

 EditText x = (EditText)findviewbyid(R.id.abc); 

Не используйте x.setText() ; Вместо этого используйте x.append(Your variable or value here) . Это не очистит текст, полученный с предыдущей кнопки.

Чтобы установить текст кнопки в EditText:

 EditText edittext=(EditText)findviewById(R.id.edittext); Button num1=(Button)findViewById(R.id.button_num1); Button num2=(Button)findviewById(R.id.button_num2); num1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { edittext.append("1"); } }); num1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { edittext.append("2"); } }); 

Для простого калькулятора см. Здесь, это поможет вам создать калькулятор в Android.