2012-11-26 6 views
0

Android에 익숙하지 않아 몇 가지 문제가 있습니다. 현재 개발하려는 앱에서 조각을 사용하려고합니다. 내가 조각 내부의 레이아웃의 일부로 나타나는 EditText보기에서 데이터의 움직임을 시뮬레이션하려고합니다.onCreateView 콜백에서 조각 내 데이터 이동 시도

레이아웃에는 다른보기가 포함되어 있습니다. 하나는 빈 TextView이고 다른 하나는 레이아웃의 일부이기도 한 단추입니다. 내가 코드 조각을 onCreateView 안에 버튼을 프로그래밍 방식으로 구현했습니다. 코드 스 니펫은 아래와 같습니다.

EditText보기에 입력 한 내용을 캡처하여 EditText 유형의 변수에로드 한 다음 단추를 클릭 한 후 빈 TextView에로드합니다. 필자는 데이터베이스에서이 데이터를 검색하여 시뮬레이션을 시도하는 초기 시도에서이 작업을 수행하고 있습니다. 나는이 경우 resName 값을 확인하고 난 다음 줄로 이동 때 nullpointer 예외가 발생하는 널 (null)입니다 찾을 때

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 

     // Inflate the layout for this fragment and assign it to a view 
     View view = inflater.inflate(R.layout.care_meeting, container, false); 

     Button button = (Button) view.findViewById(R.id.MtgButton); 
     button.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       resName = (EditText) v.findViewById(R.id.resNameEditText); 
       trsName = resName.getText().toString(); 
       TextView text = (TextView) v.findViewById(R.id.trNameView); 
       text.setText(trsName); 
      } 
     }); 

     return view; 
    } 

문제가 발생합니다 : 다시 말하지만, 여기에 코드입니다. 왜 내가 입력 한 변수가 변수에 의해 선택되지 않는지 이해하려고합니다. 또한 캐스트 예외를 포함하는 완전히 다른 문제를 도입 한 getText() 메서드를 사용하여 시도했다. 그래서 나는 그것을 포기하고 이것으로 붙 들었다.

이 문제를 경험 한 다른 사람을 찾으려고했지만 빈 그림을 그립니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 이 문제를 해결할 수 있도록 통찰력을주십시오. 사전에

감사합니다,

더그

답변

0

나는 해결책을 발견 : 나는의 getView() 메소드를 사용해야 :

resName = (EditText) getView().findViewById(R.id.resNameEditText); 
trsName = resName.getText().toString(); 
TextView text = (TextView) getView().findViewById(R.id.trNameView); 
text.setText(trsName); 

이 변경 사항은 잘 작동합니다.