2013-09-15 4 views
0

Есть что-то, чего мне не хватает в этом коде? Да, я знаю, что это в основном код, но ИМХО, я думаю, это понятно. У нас, кажется, больше ненужного текста.setOnKeyListener в фрагменте не прослушивается

@Override 
public View onCreateView(LayoutInflater inflater, 
         ViewGroup container, 
         Bundle savedInstanceState) 
{ 
    if(container == null) { return null; } 
    super.onCreateView(inflater, container, savedInstanceState); 
     final EditText editText = (EditText) outsideLayout.findViewById(R.id.prefPlayerName); 
     editText.setInputType(InputType.TYPE_TEXT_VARIATION_NORMAL); 
     editText.setRawInputType(InputType.TYPE_CLASS_TEXT); 
     editText.setImeOptions(EditorInfo.IME_ACTION_GO); 

     editText.setOnKeyListener(new EditText.OnKeyListener() 
     { 
      @Override 
      public boolean onKey(View v, int keyCode, KeyEvent event) 
      { 
       // If the event is a key-down event on the "enter" key 
       if((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) 
       { 
        Log.i(TAG, "PrefDetailsFragment enter key pressed"); 
        return true; 
       } 
       return false; 
      } 
     }); 
    return outsideLayout; 
} // onCreateView() 
+1

Где находится наружная сторона? – Jon

+0

IMHO первые две строки в этом методе абсолютно бесполезны ... Первая строка должна раздуть представление из XML или, по крайней мере, создать представление каким-то образом. Это единственная цель 'onCreateView': создать и создать экземпляр пользовательского интерфейса. – gunar

+0

@Jon, я создал это раньше, но внутри onCreateView(). В противном случае в этом фрагменте будет работать иначе. – PageMaker

ответ

-1

Попробуйте переставить editText вне onCreateView и установки слушателя в onResume, а также. Вы также можете удалить вызов супер и выйти, когда контейнер равен null.

@Override 
protected void onResume() { 
    super.onResume(); 
    if (editText != null && ! editTexthasOnClickListeners()) { 
     editText.setOnKeyListener(...); // Add on click listener here as well 
    } 
} 
Смежные вопросы