在android中控制onActivityresult()

时间:2012-11-20 09:08:15

标签: android android-intent android-activity

如果用户启用了位置服务,我必须启动设置屏幕以启用位置服务(如果已禁用)并在返回我的活动后刷新我的视图。

启动设置单击菜单项

startActivityForResult(new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS ), 1234);

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {   
    super.onActivityResult(requestCode, resultCode, data);

     if(requestCode == 1234 && (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER ) || locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER ))){

        refreshViews(); // making a server call and getting new data and assigning to views
    }

}

问题是: 如果我启用一次并返回应用程序,我想要刷新我的视图。但如果我再次点击菜单项并返回应用程序,它再次刷新。每当它从禁用状态启用状态时我想刷新我的视图。

1 个答案:

答案 0 :(得分:1)

是否启用了第一个检查提供程序。如果禁用,则只启动活动。