有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java试图在安卓中传递参数

因此,我有两个文件(MainActivity.javaHomeFragment.java),我试图将名为displayPromptForEnablingGPSpublic static voidHomeFragment传递到MainActivity。这是密码

HomeFragment.java(我试图传递的代码)

public static void displayPromptForEnablingGPS(
        final Activity activity)
{
    final AlertDialog.Builder builder =
            new AlertDialog.Builder(activity);
    final String action = Settings.ACTION_LOCATION_SOURCE_SETTINGS;
    final String message = "Enable either GPS or any other location"
            + " service to find current location.  Click OK to go to"
            + " location services settings to let you do so.";


    builder.setMessage(message)
            .setPositiveButton("OK",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface d, int id) {
                            activity.startActivity(new Intent(action));
                            d.dismiss();
                        }
                    })
            .setNegativeButton("Cancel",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface d, int id) {
                            d.cancel();
                        }
                    });
    builder.create().show();
}

MainActivity.java(我怎么称呼它)

public void showMainView() {
   HomeFragment.displayPromptForEnablingGPS();
}

但我有个错误

"HomeFragment.displayPromptForEnablingGPS();" is invalid


共 (1) 个答案

  1. # 1 楼答案

    要调用的方法需要一个参数,但不能传递它

    public static void displayPromptForEnablingGPS(
        final Activity activity)
    

    MainActivity中的方法应该如下所示:

    public void showMainView() {
       HomeFragment.displayPromptForEnablingGPS(this);
    }