2012-03-15 1 views
29

У меня есть EditText, который я представляю как отключенный, так что пользователь не может редактировать содержимое, а также избегать появления всплывающей клавиатуры. Но теперь я хочу зафиксировать событие onclick в EditText и идентифицировать отдельные слова, которые нажаты. Любая помощь приветствуется.Как захватить событие onclick в отключенном EditText в Android-приложении

Thanks, Balkrishna.

ответ

64

На ваших EditText установлены атрибуты android:focusable="false" и android:enabled="true". И установите OnClickListener на это EditText. Щелчок на том, что Edittext запускает метод onClick(), но его нельзя редактировать. Я просто попробовал.

+0

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

+0

Ну, я не вижу какой-либо способ достичь этого. Вам придется поиграть с ним. И не забудьте опубликовать ответ, если вы получите решение для него. Удачи! – Rajkiran

+0

также установить андроид: longClickable = «ложь», не на долго нажмите на нее будет идти в режим выбора/вставки –

2

Вы можете сделать компонент незаметным с помощью.

editText.setClickable(false); 

Для того, чтобы внешний вид компонента визуально отключенным за счет уменьшения значение альфа.

editText.setAlpha(0.5f); 

Это позволит установить OnTouchListener на компоненте, с помощью которого можно выполнять желаемые операции.

editText.setOnTouchListener(new View.OnTouchListener() { 
        @Override 
        public boolean onTouch(View v, MotionEvent event) { 
         Toast.makeText(getApplicationContext(),"Component is disabled", Toast.LENGTH_SHORT).show(); 
         return false; 
        } 
       }); 
+0

несколько раз вызывая на одно касание –

+0

@ChandraKiran попробовать возвращение истинного –

+1

Или попробуйте сделать это внутри слушателя: если (motionEvent .getAction() == MotionEvent.ACTION_DOWN) { // ваш код } –

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