我正在使用 google api lib 创建地图。因为地图小部件需要很长时间才能加载,所以我尝试添加加载通知,但没有显示。不过,我可以在常规线程中显示进度对话框。为什么这个对话框没有显示?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
progressDialog = ProgressDialog.show(this, "Please Wait", "Map = loading",false,true);
//setContentView(R.layout.map);
runOnUiThread(new Runnable(){
public void run() {
try{
Log.d("debug", "before setContentView"); //13:36:25
setContentView(R.layout.map);
Log.d("debug", "after setContentView"); //13:36:39
} catch (Exception e) { }
progressDialog.dismiss();
}});
initMap();
initGps();
}
贴一个是没有意义的ProgressDialog
for a MapActivity
因为“地图小部件需要很长时间才能加载”,因为你无法知道什么时候MapView
加载完毕,因此您无法知道何时关闭该对话框。setContentView()
本身应该运行得相当快;地图图块的实际加载是异步发生的。
请注意,显示所需的时间MapView
主要依赖于返回 Google 地图服务器的互联网连接。在大多数情况下,它并不需要特别长的时间,当然也不足以保证ProgressDialog
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)