在preferenceScreen定制preferenceScreenpreferenceScreen

2023-09-06 18:11:47 作者:Lonely丶baby

我在我的应用程序有一个标准的preference页面。但是从这个preference页我希望用户能够浏览到其他preferenceScreen与自定义布局,当用户presses管理Favorits。

I have a standard preference page in my app. But from this preference page i want the user to be able to navigate to an other PreferenceScreen with a custom layout, when user presses "Manage Favorits.

这是自定义布局,我有几点:

This is the custom layout i have in mind:

是否有可能在子preference屏使用自定义布局?

Is it possible to use custom layout on "sub-preference-screens"?

谢谢!

推荐答案

是的,你可以启动一个单独的活动使用意图

Yes, you can launch a separate activity using intent.

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">

    <PreferenceScreen android:title="@string/your_title"
    android:summary="@string/your_string">

        <intent android:targetClass="your.package.YourClass"
            android:targetPackage="your.package" />
    </PreferenceScreen>

</PreferenceScreen>

只要你想指定自己的布局,您将需要延长 preference 类。

使用 setLayoutResource()来在构造函数定义布局。构造函数必须

Use setLayoutResource() to define your layout in your constructor. Constructor needs to be

public YourClass(Context context, AttributeSet attrs) {
        super(context, attrs);
        setLayoutResource(R.layout.your_custom_layout);
    }

您也可以检查this.