无法从静态context-switch语句引用

时间:2017-10-12 02:18:18

标签: java android

这是什么错误,我该如何解决?这让我疯了。

public static void NSOMUHDialog(final Context context) {
  AlertDialog.Builder builder = new AlertDialog.Builder(context);
  builder.setTitle("Menu");
  builder.setCancelable(true);
  builder.setItems(new CharSequence[]{"Announcements", "Rate us", "Get support", "How to use?", "Share download link"},
      new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
              switch (which) {
                case 0:
                  if (NSOMUHUpdateChecker.getInstance(context).isOnline()) {
                     // internet is available, fetch announcements
                     new NSOMUHFetchAnnouncements().execute();
                  } else {
                     // device is offline
                     Toast.makeText(context, "not connected", Toast.LENGTH_LONG).show();
                  }
                  break;

ERROR:

  

NSOMUHMenu.this'无法从静态上下文引用

2 个答案:

答案 0 :(得分:0)

你不能打电话给不存在的东西。由于尚未创建对象,因此尚不存在非静态方法。静态方法(按定义)始终存在。

请在NSOMUHUpdateChecker类中使用 static 关键字

CreateSvgDocument

答案 1 :(得分:0)

只需从函数声明中删除static关键字