在xml文件的Preference标签中,用<extra>给<Intent>标签加参数,以及<intent>标签的android:targetPackage和android:targetClass属性使用注意事项
- <?xml version="1.0" encoding="utf-8"?>
- <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
- <Preference
- android:title="prefs_category_one"
- android:summary="prefs_summary_category_one">
- <!-- 这里android:targetPackage是应用程序的Context,而android:targetClass的路径在子包settings下 -->
- <!-- 如果把 android:targetPackage="com.demo.artshell.uidemo.settings" 运行时找不到Activity -->
- <intent
- android:action="prefs_category_action_ONE"
- android:targetPackage="com.demo.artshell.uidemo"
- android:targetClass="com.demo.artshell.uidemo.settings.SupportOldVersionAndReusedActivityOrFragment$ReusedActivity">
- <!-- 官网没有说明,但确实可以通过<extra>传附加信息 getIntent().getStringExtra("reused_key") -->
- <extra
- android:name="reused_key"
- android:value="reused_fragment_two"/>
- </intent>
- </Preference>
- <Preference
- android:title="prefs_category_two"
- android:summary="prefs_summary_category_two">
- <intent
- android:action="prefs_category_action_TWO"
- android:targetPackage="com.demo.artshell.uidemo"
- android:targetClass="com.demo.artshell.uidemo.settings.SupportOldVersionAndReusedActivityOrFragment$ReusedActivity"/>
- </Preference>
- </PreferenceScreen>