【问题标题】:My Android App Does Not Exist When Pressing Back Button按返回按钮时我的 Android 应用程序不存在
【发布时间】:2013-05-30 17:57:36
【问题描述】:

我有一个应用程序,我可以检查用户是否在设备上启用了 GPS 和无线定位。如果没有启用,那么我启动活动来启用它们。我的代码是:

if (!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)
                || !locationManager
                        .isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setTitle(R.string.gps_not_found_title);  // GPS not found
            builder.setMessage(R.string.gps_not_found_message); // Want to enable?
            builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialogInterface, int i) {
                    startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS));
                }
            });
            builder.setNegativeButton("Cancel", null);
            builder.create().show();
            return;
        }

上面的代码然后启动我的位置活动,让用户启用 GPS 和无线定位。之后,如果我按下返回按钮,它应该回到我的应用程序活动,但它显示 android 启动器。我还检查了任何内存的日志泄漏或任何其他未返回到我的应用程序的问题,但它们不是这样的错误。

请帮帮我。

提前致谢

【问题讨论】:

  • 设置否定按钮不用于退出应用程序..
  • 把你的后退按钮代码...
  • 将您的活动代码放入清单文件中

标签: android android-activity android-location


【解决方案1】:

这样使用。

builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {

            @Override
            public void onClick(DialogInterface dialog, int which) {
                // TODO Auto-generated method stub
                dialog.cancel();
            }
            });

        alertDialog.show();

对于按下后退按钮,

WebView wt;//i used and given example by using webview               

    @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

    if(event.getAction() == KeyEvent.ACTION_DOWN){
        switch(keyCode)
        {
        case KeyEvent.KEYCODE_BACK:
            if(wt.canGoBack() == true){
                wt.goBack();
            }
            else{
                this.finish();
            }

            return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}

【讨论】:

    【解决方案2】:

    我找到了我的问题答案,我的清单文件中有 android:noHistory="true" 用于活动。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-01
      • 2011-07-16
      • 2020-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-10
      相关资源
      最近更新 更多