Android Intent和Intent过滤器

时间:2015-06-19 13:23:08

标签: android android-intent intentfilter

我的代码存在问题。 我想从按钮传递到另一个活动。 这是我的代码:

MainActivity.class

ImageView imgsettings;

onCreate()

imgsettings = (ImageView) findViewById(R.id.imgviewsettings);
imgsettings.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent("android.intent.action.SETTINGS"));                                
    }
});

AndroidManifest

<activity
    android:name=".AppSettings"
    android:label="@string/title_activity_app_settings" >
    <intent-filter>
        <action android:name="android.intent.action.SETTINGS" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter> 
</activity>

我真的找不到问题。一切似乎都适合我。

3 个答案:

答案 0 :(得分:0)

你没有必要为此而处理。 你必须做startActivity(new Intent(MainActivity.this,AppSettings.class));转到AppSettings活动。

答案 1 :(得分:0)

没有名称为android.intent.action.SETTINGS的操作。尝试从您的清单中删除<intent-filter>,并在onClick()方法中添加此代码段:

Intent intent = new Intent(android.provider.Settings.ACTION_SETTINGS);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);

看一下这个问题Opening Android Settings programmatically

答案 2 :(得分:0)

在onClick方法中尝试此操作。

 Intent myIntent = new Intent(MainActivity.this, android.intent.action.SETTINGS.class);

MainActivity.this.startActivity(myIntent);