2013-11-11 4 views
0

У меня есть фрагмент, реализующий onClickListener. У меня есть пользовательский дозвон, который должен показать на edittext введенный номер. Но это ничего не показывает.Фрагмент, не вызывающий onClick

Это фрагмент:

PhoneView.java

public class PhoneView extends Fragment implements OnTabChangeListener, OnClickListener { 
... 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     mRoot = inflater.inflate(R.layout.phone_view, null); 
     mTabHost = (TabHost) mRoot.findViewById(android.R.id.tabhost); 
     setupTabs(); 
     return mRoot; 
    } 

    @Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     super.onActivityCreated(savedInstanceState); 
     setRetainInstance(true); 
     ... 

     ImageButton button1 = (ImageButton) getView().findViewById(R.id.one); 
     EditText numTxt = (EditText) getView().findViewById(R.id.digits); 
     ... 

     button1.setOnClickListener(this); //UPDATED - ADDED 
     ... 
    } 

    @Override 
    public void onClick(View v) { 
     switch (v.getId()){   
      case R.id.one: 
       numTxt.setText(numTxt.getText()+"1"); 
       break; 
      ... 
+0

Что вы делаете в методе onCreateView? – Prateek

+0

Я раздуваю макет – masmic

+0

где установленOnclickListener (это); в том, что он должен быть там, где событие click должно быть записано с – Prateek

ответ

0

вы должны вызвать View.setOnClickListener(OnClickListener) в виде вы хотите реагировать на событие щелчка

+0

Я так называю это? и на какой взгляд вы ссылаетесь? макет или ImageButton? – masmic

+0

например button1.setOnClickListener (это); (после findViewById) – Blackbelt

+0

Добавлен, но все еще не работает – masmic

0

В своем классе активность, что вам нужно для определения вашего Phoneview при нажатии кнопки ClickListener на кнопку или на другой «вид»

Предположим, что в вашем классе активности u hav e кнопка с именем deleteButton, и если вы хотите зарегистрировать прослушиватель для этой кнопки ... Вот как вы это сделаете.

private Button deleteButton= null; 
deleteButton.setOnClickListener(PhoneView); 
+0

Возможно ли это сделать непосредственно на фрагменте? Я обновил сообщение, добавив еще несколько кодов. Я думаю, что этот способ должен работать, но не обновляет edittext – masmic

+0

Извините, я не очень много работал над фрагментами. – codeMan

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