1

フラグメント クラスで initialize メソッドを呼び出そうとしていますが、このクラスでは getMainLooper が定義されていません。

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

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

助けてください。

4

1 に答える 1

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();
                }
              }
            );
于 2013-10-07T23:19:36.000 に答える