2014-10-05 7 views
0

Я пытаюсь создать поле с текстом (без кнопки), на который я нажимаю, чтобы открыть диалоговое окно datepicker. Я просто начинаю, и я пробовал это на простом примере.onTouchListener делает действие дважды

firstbirth.setOnTouchListener(new View.OnTouchListener() { 
      @Override 
      public boolean onTouch(View view, MotionEvent motionEvent) { 
       Toast.makeText(getApplicationContext(), "ahooj", Toast.LENGTH_LONG).show(); 
       return false; 
      } 
     }); 

firstbirth spinner, я попробовал его с Edittext, и результат был таким же. Может ли кто-нибудь мне помочь?

Заранее благодарен!

ответ

1

Вместо этого используйте OnClickListener.

setOnClickListener(View.OnClickListener l) 

OnTouchListeners вызовет на нескольких сенсорных событиях (например, нажатие вниз, подправить и т.д.), тогда как OnClickListener только уволит раз (OnClick :))

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

Try:

@Override 
public boolean onTouch(View view, MotionEvent motionEvent) { 
if (motionEvent.getAction() == MotionEvent.ACTION_UP { // another option would be ACTION_DOWN for example 
    Toast.makeText(getApplicationContext(), "ahooj", Toast.LENGTH_LONG).show(); 
    return true; 
    } 
return false; 
} 
0

Благодаря это звучит логично, но когда я использую приложение событие OnClick фетровые пуховые при инициализации.

firstbirth.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 

       DialogFragment dd1 = new DatePickerFragment(); 
       dd1.show(getFragmentManager(), "Select a date"); 
      } 
}); 

Проблема не с DialogFragment, потому что она работает, когда я использую событие onTouch. Спасибо :)

+0

не уверен, что вы имеете в виду с фетром. Если вы хотите использовать onTouch, см. Редактирование в моем ответе. – pumpkee

+0

Я имею в виду «Вслучаю, приложение .. перестань работать». – Filip

+0

Ваше решение действительно здорово, оно работает красиво! Благодаря :) – Filip

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