本文用于实现一个简单的ProgressDialog进度条,当检测到wifi扫描成功时,进度条完毕,其中用到广播,参考上一篇文章了解下广播,或者百度也行。
1.新建一个广播类
class WifiReceiver extends BroadcastReceiver
{
public void onReceive(Context context, Intent intent)
{
if (intent.getAction().equals(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION))
{
wifiList = mainWifi.getScanResults();
if(isRegister)
{
unregisterReceiver(receiverWifi);
isRegister = false;
}
dialog.dismiss();
Toast.makeText(context, "扫描完毕", Toast.LENGTH_LONG).show();
}
}
}
用于接收WIFI扫描完成信息,并且注销广播、关闭进度条
2. 注册广播
receiverWifi = new WifiReceiver();
IntentFilter filter = new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
registerReceiver(receiverWifi, filter);
isRegister = true;
3. 进度条
dialog = new ProgressDialog(WifiTester.this);
dialog.setTitle("进度条");
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.setMessage("正在扫描WIFI热点。。。");
dialog.setIndeterminate(false); //设置进度条是否为不明确
dialog.setCancelable(true); //设置进度条是否为按退回键取消
dialog.show();
由于该广播是系统发送的,我们就不用管了,只需处理即可。这样就OK啦,欢迎大家批评指正。