마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

뷰페이저 브로드캐스트 수신에서 원인을 모르겠습니다.

0 추천
뷰페이저 탭메뉴(0에서4번까지)를 사용하고 있고,

0번 메뉴에서 브로드캐스트수신을 이용하여 와이파이 상태를 체크해서 setText("문자열") 해주고 있습니다.

0번 페이지에서는 와이파이를 껐다 켰다 하면 문자열이 원하는대로 잘 바뀌는데요.

1번 페이지로 이동했다가 2번 페이지로 이동하는 순간 알수없는에러로 튕겨지고 있습니다.

0번 메뉴일때 1번메뉴를 미리 로딩시켜나서 1번까지는 이상이 없다가 2번으로 이동할 때는 문제가 생기네요.

그냥 토스트 메시지를 띄울때는 문제없이 잘 돌아가는데 setText 하면 문제가 생깁니다.ㅠㅠ

findVeiw ID를 제대로 못가져오는걸까요?

2번 메뉴로 들어갈때 setText중복설정이 되서 문제가 생기는걸까요?

조언 좀 부탁드리겠습니다. ㅠㅠ

 

onResume에서

IntentFilter filter = new IntentFilter();
filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
getActivity().registerReceiver(wifiReceiver, filter);

 

onStop에서

getActivity().unregisterReceiver(wifiReceiver);

 

onReceive에서

if(wifi.getWifiState()==WifiManager.WIFI_STATE_ENABLED) {
                ssidTextView = (TextView)getActivity().findViewById(R.id.ssidName);
                ssidTextView.setText("할수있다");
                Toast.makeText(getActivity(),"open",Toast.LENGTH_SHORT).show();
            }else{
                ssidTextView = (TextView)getActivity().findViewById(R.id.ssidName);
                ssidTextView.setText("노력하면된다");
                Toast.makeText(getActivity(),"close",Toast.LENGTH_SHORT).show();
            }
익명사용자 님이 2016년 3월 23일 질문

1개의 답변

0 추천
 
채택된 답변
음 ..

내용상으로는 리시버가 등록되어 있는 상태에서 또 등록을 하려고 해서 문제가 생길거 같은데

자세한 내용은 로그를 봐야 알것같습니다.
모나미153 (17,540 포인트) 님이 2016년 3월 23일 답변
...