2012-08-04 56 views
0

我想在我的片段中擊中特定editText時烤麪包。無法讓onTouchListener在fragmentActivity中工作

我的片段活動:當添加

@Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onActivityCreated(savedInstanceState); 

     EditText ed2 = (EditText) getView().findViewById(R.id.editText2); 
     ed2.setOnTouchListener(new OnTouchListener() { 
      @Override 
      public boolean onTouch(View v, MotionEvent event) { 
       if(MotionEvent.ACTION_UP == event.getAction()){ 

        Toast.makeText(getActivity(), "Hello", Toast.LENGTH_LONG).show(); 
       } 
       return false; 
      } 
     }); 
    } 

我的應用程序崩潰的碎片。我在ed2.setOnTouchListener...處得到空指針。

任何想法?

回答

1

的EditText爲空。 如果你的contentview不是cotain edittext,edittext不能創建。 OnTouchListener不爲空。 首先檢查EditText。

+0

我的editText編號錯了。感謝您的意見。 – EGHDK 2012-08-05 03:45:25

1

使用onCreateView

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View view = inflater.inflate(R.layout.your_view, container, false); 
    EditText = ed2 = (EditText) getView().findViewById(R.id.editText2); 
    ed2.setOnTouchListener(new OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      if(MotionEvent.ACTION_UP == event.getAction()){ 

       Toast.makeText(getActivity(), "Hello", Toast.LENGTH_LONG).show(); 
      } 
      return false; 
     } 
    }); 
    return view; 
}