아래 질문에서 프라그멘트를 사용하라고 해서 일단 창을 듸웠는데
그 프라그멘트 창에 있는 Textview 의 문자를 변경하면 에러를 발생하는군요.
엑티비티에서 프라그먼트 창을 띄우고 버튼이나 텍스트뷰등을 엑티비티에 있는것과 동일하게 사용하려면 뭘 해야 할까요?
힌트좀 주시면 감사하겠습니다.
public class MainActivity extends AppCompatActivity {
Button Button1, Button2, TestBtn;
Fragment fr = null;
TextView FirstText, MainTxt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MainTxt = (TextView) findViewById(R.id.testView);
Button1 = (Button)findViewById(R.id.btn_first);
Button2 = (Button)findViewById(R.id.btn_second);
TestBtn = (Button)findViewById(R.id.btn_test);
FirstText = (TextView) findViewById(R.id.firstTxt);
}
public void onClick(View v) {
switch( v.getId() ) {
case R.id.btn_first:
fr= new FirstFragment();
selectFragment(fr);
break;
case R.id.btn_second:
fr= new SecondFragment();
selectFragment(fr);
break;
case R.id.btn_test:
FirstText.setText("안녕하세요"); //<-- 에러발생. 프로그램 종료
//MainTxt.setText("안녕하세요");
break;
}
}
public void selectFragment(Fragment fr){
FragmentManager fm = getFragmentManager();
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fr);
fragmentTransaction.commit();
}