Включение сенсорного режима для редактирования текста для ввода чисел в него - PullRequest
0 голосов
/ 27 марта 2012

У меня есть поле edittext, и мне нужно реализовать способ, чтобы при касании его появлялось окно с номером от 1 до 9, а когда я выбираю число, значение текста редактирования должно быть установлено с помощью этого число. как я могу получить это .. ???

или когда я касаюсь его, значения edittext должны быть установлены в 1 (при первом касании), это код, который я пробовал:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    EditText edit = (EditText) this.findViewById(R.id.editText1);
    edit.setOnTouchListener(new View.OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // TODO Auto-generated method stub
            boolean flag = false;
            switch(event.getAction())
            {
                case MotionEvent.ACTION_DOWN:
                    flag = true;
                    break;
                case MotionEvent.ACTION_UP:
                    flag = true;
                    break;

            }
            return flag;
            if(flag)
            {
                if ((e.getText()+"") == "")
                {
                    e.setText("1");
                }
                else
                {
                    if(Integer.parseInt(e.getText())==9)
                            e.setText("1");
                    else
                        e.setText(Integer.parseInt(e.getText()+"")+1);
                }
            }
        }
    });

}

но внутри кода не найдено ...

1 Ответ

0 голосов
/ 09 июля 2012

Самый простой способ разрешить ввод только чисел с клавиатуры, это использовать атрибут inputType для EditText:

<EditText android:id="@+id/size"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:inputType="number"
        />
...