Кнопка onclick слушателя должна отображаться в тексте редактирования - PullRequest
0 голосов
/ 06 января 2012

Я разрабатываю приложение для Android.

Мое приложение содержит десять кнопок, для которых я установил метод onclicklistener ().Десять кнопок содержат цифры 0-9.

Теперь, если я нажму любые две или три кнопки из десяти кнопок, соответствующие цифры должны быть введены в текст редактирования и он должен отображаться в поле текста редактирования.

Я могу отобразить одну цифру, если я нажимаю на любую из кнопок, но если я нажимаю на другую кнопку, то предыдущее значение исчезает и отображается новое значение.

Но я хочу вот что: независимо от того, сколько кнопок я нажимаю, этого нет.цифр появится в окне редактирования текста.

Пожалуйста, кто-нибудь может объяснить мне код или дать подсказку, чтобы его можно было сделать более простым способом.

Ответы [ 6 ]

1 голос
/ 06 января 2012

Использование общих настроек:

Я думаю, вы могли использовать Общие настройки , когда вы нажимали кнопку, получить значение из Edittext и поставить общие настройки. После нажатия кнопки «Далее» получите значение общих настроек. Вы можете использовать каждое нажатие кнопки для установки общих параметров.

Перейдите к этой проблеме, которая поможет вам решить: >> Проблема SharedPreference в android

Использование намерения:

May be used this code on button click event:


            Bundle extras = getIntent().getExtras();
            String value1 = extras.getString("Value1");
    String value2 = extras.getString("Value2");
    if (value1 != null && value2 != null) {
        EditText text1 = (EditText) findViewById(R.id.EditText01);
        EditText text2 = (EditText) findViewById(R.id.EditText02);
        text1.setText(value1);
        text2.setText(value2);
    }

Другие полезные ресурсы: Получить значение поля редактирования текста

http://mobile.tutsplus.com/tutorials/android/android-user-interface-design-edittext-controls/

http://www.java2s.com/Code/Android/UI/GetvaluefromEditText.htm

http://geekswithblogs.net/bosuch/archive/2011/01/17/android---passing-data-between-activities.aspx

1 голос
/ 06 января 2012

Вы используете editText.setText("");

Вместо этого вы должны использовать editText.append();

0 голосов
/ 13 октября 2012

Во всех событиях нажатия кнопок 0-9 вы можете написать следующий код.

editText.setText((editText.getText().toString) +""+ nevText);

Когда вы нажимаете кнопку, а затем над кодом установите новый текст с предыдущим текстом в поле редактирования текста.

0 голосов
/ 06 января 2012

Используйте приведенный ниже код

    public class AsActivity extends Activity {
/** Called when the activity is first created. */
Button b1,b2,b3;
EditText et;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    b1=(Button)findViewById(R.id.button1);
    b2=(Button)findViewById(R.id.button2);
    b3=(Button)findViewById(R.id.button3);
    et=(EditText)findViewById(R.id.editText1);
}
public void onclick(View v){
    switch(v.getId()){
    case R.id.button1:
        et.append("1");
        break;
    case R.id.button2:
        et.append("2");
        break;
    case R.id.button3:
        et.append("3");
        break;
    }
}
}

здесь у меня есть свойство use кнопки, вы можете использовать оператор switch, как показано выше в ur onclicklistener

0 голосов
/ 06 января 2012

Вы должны использовать метод EditText append(), который добавляет данные к EditText.

Таким образом, каждый раз, когда нажимается новая кнопка, просто используйте:

 myEdtiText.append(str);
0 голосов
/ 06 января 2012

Вы можете взять открытую статическую переменную String и объединить новое значение с предыдущим и установить для него EditText

...