2013-09-30 20 views
1

我想在我的片段類中調用初始化方法,但它說getMainLooper對於這個類是未定義的。初始化方法在wifip2p框架中註冊片段

private void initializeWiFiDirect() { 
     wifiP2pManager = 
      (WifiP2pManager)getActivity().getSystemService(Context.WIFI_P2P_SERVICE); 

     wifiDirectChannel = wifiP2pManager.initialize(this, getMainLooper(), 
        new ChannelListener() { 
        public void onChannelDisconnected() { 
        initializeWiFiDirect(); 
        } 
        } 
       ); 
     } 

請幫忙。

+2

只需更換'getMainLooper()'和'getActivity()getMainLooper()' –

回答

2

你可以改變它這種方式 -

this --> getActivity().getApplcationContext() // basically context. 
               // you could use BaseContext too. 

getMainLooper --> getActivity().getMainLooper()

Channel wifiDirectChannel = wifiP2pManager.initialize(getActivity().getApplicationContext(), getActivity().getMainLooper(), 
       new ChannelListener() { 
       public void onChannelDisconnected() { 
       initializeWiFiDirect(); 
       } 
       } 
      );