16

私の設定ファイルでは、これに行きます

    <PreferenceCategory android:title="Title" >
        <Preference android:title="title" >
    <intent android:action="com.my.package.MainActivity" 
            />
</Preference>
    </PreferenceCategory>

アクティビティはマニフェスト ファイルに作成されますが、それでも取得できます

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=com.my.package.MainActivity }

設定画面からアクティビティを開始するにはどうすればよいですか?

4

6 に答える 6

6

これは、xml からインテントを開始する正しい方法ではありません。このandroid:actionフィールドは、開始しようとしているアクティビティの名前ではありません。別のアクティビティが提供できるインテント フィルター (android.intent.action.VIEWまたは など) のアクションを記述します。android.intent.action.EDIT

<intent>、android:action などの正しい使用については、この回答を参照してください: https://stackoverflow.com/a/3751306/582004

AndroidManifest.xml で、アクティビティに PreferenceActivity で要求している<intent-filter> を含む > が含まれていることを確認し<actionます (参照されている回答では、これは ですandroid.intent.action.VIEW)。

于 2013-05-02T23:35:50.863 に答える
6

これを試して

 <intent android:targetPackage="your.package"
 android:targetClass="your.package.yourMainClassName"/>
于 2016-02-12T12:13:04.413 に答える
5

あなたのマニフェストで:

これは、[your package].MainActivity というアクティビティの定義です。

<activity android:name=".MainActivity">
 <intent-filter>
      <action android:name="example.action.ACTION_MAIN_ACTIVITY" />
      <category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>

また、PreferenceScreen を使用してみてください。

<PreferenceScreen android:title="@string/my_location_settings">
    <intent android:action="example.action.ACTION_MAIN_ACTIVITY">
    </intent>
</PreferenceScreen>

詳細については、このリンクを参照してください... Preferences.xml からのアクティビティの開始

于 2013-06-06T10:57:09.377 に答える