我有一个切换按钮可以打开和关闭无线。它工作正常。但是,我希望当我进入我的应用程序时,如果无线已经打开,我的切换按钮也会打开。现在不是。有些事情是不对的。这是我的代码。
WifiManager WifiMan;
ToggleButton WiFi, GPRS;
WiFi.setOnClickListener(new OnClickListener() { //Ukljucuje WiFi
@Override
public void onClick(View v) {
if(WifiMan.isWifiEnabled())
{
WiFi.setEnabled(true);
}
else{
WiFi.setEnabled(false);
}
try
{
if (((ToggleButton)v).isChecked())
SwarmPopup.this.WifiMan.setWifiEnabled(true);
else
SwarmPopup.this.WifiMan.setWifiEnabled(false);
}
catch (Exception localException)
{
Log.e("SwarmPopup", "error on WiFi listerner: " + localException.getMessage(), localException);
}
}
});
}
答案 0 :(得分:2)
如果那是所有你的代码(我怀疑是),那么问题是你只是在点击切换时检查WiFi状态(以及你的切换状态)。
如果您在活动的WiFiMan.isWifiEnabled()
中添加onCreate()
支票,则可以在创建活动时轻松设置切换的状态。
答案 1 :(得分:2)
假设WifiMan
是WifiManager,请使用:
WiFi.setChecked(WifiMan.isWifiEnabled());
另请阅读Java naming convention,其中指出变量名称应以小写字母开头。
最后,代码如下:
if(WifiMan.isWifiEnabled())
{
WiFi.setEnabled(true);
}
else{
WiFi.setEnabled(false);
}
可以简化为:
WiFi.setEnabled(WifiMan.isWifiEnabled());