如何在 PreferenceActivity 中添加 ImageView?

发布于 2024-12-08 18:07:01 字数 1734 浏览 0 评论 0原文

他是我最喜欢的活动:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
  xmlns:android="http://schemas.android.com/apk/res/android">


       <PreferenceCategory
            android:title="Select your country or region">
                <ListPreference
                android:title="Pick your country"
                android:key="regionsListPref"
                android:defaultValue="digiGreen"
                android:entries="@array/regionArray"
                android:entryValues="@array/regionValues" />

                <ImageView  
         android:id="@+id/ImageView01"  
         android:layout_height="fill_parent"  
         android:layout_width="fill_parent"  
         android:cropToPadding="true"  
         android:adjustViewBounds="true"
         android:src="@drawable/splash"
         android:scaleType="centerInside"></ImageView> 

        </PreferenceCategory>

    <PreferenceCategory
            android:title="Second Category">
      <CheckBoxPreference android:title="@string/bjr" android:key="macheckbox"
      android:summaryOn="La checkbox est cochée"
      android:summaryOff="La checkbox n'est plus cochée"
      android:defaultValue="true"
       />

      <EditTextPreference android:title="Mon EditText"
      android:dialogTitle="Modification du texte"
      android:dialogMessage="Entrez le nouveau texte"
      android:dialogIcon="@drawable/icon" 
      android:defaultValue="Texte par défaut" android:key="montextedit"/>
       </PreferenceCategory>

</PreferenceScreen>

使用 mmy 代码构建项目时不会出现错误。 但在通过显示首选项活动来运行它时出现异常。

所以,我的问题是:如何简单地将 ImageView 添加到 PreferenceActivity 中?

此致

His is my preference activity:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
  xmlns:android="http://schemas.android.com/apk/res/android">


       <PreferenceCategory
            android:title="Select your country or region">
                <ListPreference
                android:title="Pick your country"
                android:key="regionsListPref"
                android:defaultValue="digiGreen"
                android:entries="@array/regionArray"
                android:entryValues="@array/regionValues" />

                <ImageView  
         android:id="@+id/ImageView01"  
         android:layout_height="fill_parent"  
         android:layout_width="fill_parent"  
         android:cropToPadding="true"  
         android:adjustViewBounds="true"
         android:src="@drawable/splash"
         android:scaleType="centerInside"></ImageView> 

        </PreferenceCategory>

    <PreferenceCategory
            android:title="Second Category">
      <CheckBoxPreference android:title="@string/bjr" android:key="macheckbox"
      android:summaryOn="La checkbox est cochée"
      android:summaryOff="La checkbox n'est plus cochée"
      android:defaultValue="true"
       />

      <EditTextPreference android:title="Mon EditText"
      android:dialogTitle="Modification du texte"
      android:dialogMessage="Entrez le nouveau texte"
      android:dialogIcon="@drawable/icon" 
      android:defaultValue="Texte par défaut" android:key="montextedit"/>
       </PreferenceCategory>

</PreferenceScreen>

With mmy code there is no error when building the project.
But I got an exception when running it by displaying the preference activity.

So, my question is: How to simply add an ImageView into PreferenceActivity?

Best regards

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

月竹挽风 2024-12-15 18:07:01

没有简单的方法可以做到这一点。您的首选项 Activity 需要一个 Preference 或一个扩展它的类,因此它会在您提供的其他类上崩溃。

我以前从未这样做过,但这是我会尝试的:

  • 放置默认 Preference 进入您的设置 XML
  • 为资源创建自定义布局(其中包含您的图像)
  • 使用 android:layout 属性用于在设置 XML 中设置自定义布局

在首选项上设置自定义布局时可能会出现一些陷阱 - 请阅读 setLayoutResource。你可以看看 默认布局已完成。

There is no simple way to do that. Your preference activity expects a Preference or a class which extends it so it crashes on other classes which you give.

I never did that before but here's what I would try:

  • Put an default Preference into your settings XML
  • Create a custom layout for the resource (with your image in it)
  • Use android:layout attribute to set you custom layout in settings XML

There might be some traps while setting your custom layout on the preference- Please read setLayoutResource. You can take a look at how the default layout is made up.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文