Mainactivity에서 버튼을 눌러 framelayout에 미리 구현한 xml을 inflate해서 내부에 있는 Radiogroup의 상태를 다른 Activity에서 입력하여 변경하는 기능을 구현하는 도중에 에러가 났습니다. 에러 메세지는 다음과 같습니다.
java.lang.NullPointerException: Attempt to invoke virtual method 'void kr.co.comany.ihm_app.MainActivity.rg_clear(int)' on a null object reference
at kr.co.comany.ihm_app.lvpopupActivity.onBackPressed(lvpopupActivity.java:97)
at kr.co.comany.ihm_app.lvpopupActivity$4.onClick(lvpopupActivity.java:88)
아래 글은 구글링해서 얻은 결과인데 실력이 일천해서 알아듣기고 적용시키기가 어렵습니다. 도와주세요 ㅠㅠ
1. inflate로 추가한 라디오 그룹을 null로 인식하는 것 같습니다. 아래 두 문단은 구글링으로 얻은 결과인데 제가 실력이 미천한지라 알아듣고 적용하기가 어렵습니다.
Resource ID(XML Layout의 Child View)는 inflate() 시 Casting 에러로 APP이 종료되게 됩니다. Resource ID 별로 inflate 시킬수가 없습니다. 꼭 Layout을 inflate 시켜야 View를 얻을 수 있습니다.
2. infalte 된 View의 Child 라면 findViewById는 절대 inflate된 View.findViewById 로 찾아야 합니다. 아니면 View를 참조 할 수 없습니다.