2016-06-13 134 views
0

我试图打开这个类的一个按钮,它工作正常,但是,这个类是不存在于HTC设备,所以我希望我的应用程序显示吐司这个异常,但它不显示任何东西 -如何打开系统设置活动?

Intent intent = new Intent(); 
     intent.setAction("android.media.action.DISPLAY_AUDIO_EFFECT_CONTROL_PANEL"); 
     if ((intent.resolveActivity(getPackageManager()) != null)) { 
      startActivity(intent); 
     } else { 
      Toast.makeText(getBaseContext(), "you are offline", Toast.LENGTH_LONG).show(); 
// No equalizer found :(
     } 
+0

如果你的类是活动,请尝试使用'this'而不是'getBaseContext()'。 –

+0

这不是问题...我试图打开另一个活动,它只是不叫 – abbie

回答

0

您可以通过按后退按钮在设备与

startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0); 

您可以返回打开。

+0

我应该在哪里放这条线? – abbie

+0

你能编辑你的答案吗? – abbie

0

试试这个

在你MainActivity.java

 Intent intent = new Intent(); 
     intent.setAction("android.media.action.DISPLAY_AUDIO_EFFECT_CONTROL_PANEL"); 
     if ((intent.resolveActivity(getPackageManager()) != null)) { 
      // here is the changes 
      // REQUEST_CODE is an any integer value 
      startActivityForResult(intent, REQUEST_CODE); 
     } else { 
      Toast.makeText(getBaseContext(), "Unable to open setting..", Toast.LENGTH_LONG).show(); 
     } 

如果你要处理的意图的结果,那么

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     // add your code here 
    } 
+0

我可以使用startActivityForResult(intent,0); – abbie

+0

是的,任何整数不允许 –

+0

@abbie你试过我的解决方案吗? –