代码之家  ›  专栏  ›  技术社区  ›  Arfmann

带有自定义文本字体和颜色的微调器

  •  1
  • Arfmann  · 技术社区  · 6 年前

    <spinner/>

    这是我的密码

    <Spinner
                    android:id="@+id/spinner2"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="5pt"
                    android:layout_marginTop="5pt"
                    android:backgroundTint="#d9d9d9"
                    android:entries="@array/dropdown_main" />
    

    应该是这样的:

    enter image description here

    文本字体为粗体,颜色为#333333

    2 回复  |  直到 6 年前
        1
  •  8
  •   Avilash    6 年前

    在这里,您可以在布局文件夹中创建自定义xml文件,您可以在其中添加以下内容:

    <?xml version="1.0" encoding="utf-8"?>
    <TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textColor="#333333"
    android:padding="10dp"
    android:textStyle="bold"  /> 
    

    然后在你的代码中这样写:

    val adapter = ArrayAdapter.createFromResource(this, R.array.array_name, R.layout.custom_spinner) // where array_name consists of the items to show in Spinner
    adapter.setDropDownViewResource(R.layout.custom_spinner) // where custom-spinner is mycustom xml file. 
    

    然后设置适配器。

        2
  •  10
  •   MFazio23    6 年前

    <font-family> 使用 app res-auto 命名空间而不是 android .

    theme

    <Spinner
        android:id="@+id/spinner2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginStart="5pt"
        android:layout_marginTop="5pt"
        android:backgroundTint="#d9d9d9"
        android:entries="@array/dropdown_main"
        android:theme="@style/SpinnerTheme"  />
    

    styles.xml 可以包含主题:

    <style name="SpinnerTheme">
        <item name="android:textColor">#333333</item>
        <item name="android:fontFamily">@font/product_sans</item>
        <item name="android:textStyle">bold</item>
    </style>
    

    1. 添加字体文件夹:右键单击 res 文件夹并选择
    2. 从以下位置将产品Sans字体文件添加到项目中 https://befonts.com/product-sans-font.html .
    3. font 文件夹位于 然后选择 product_sans.xml .
    4. 列出添加的字体:

    如果您使用的是支持库,请在此处指定命名空间。否则,如果您使用的是sdkversion26或更高版本,则可以引用 命名空间。

    <font-family xmlns:app="http://schemas.android.com/apk/res-auto">
        <font app:font="@font/product_sans_regular" app:fontWeight="400" app:fontStyle="normal" />
        <font app:font="@font/product_sans_italic" app:fontWeight="400" app:fontStyle="italic" />
        <font app:font="@font/product_sans_bold" app:fontWeight="700" app:fontStyle="normal" />
        <font app:font="@font/product_sans_bold_italic" app:fontWeight="700" app:fontStyle="italic" />
    </font-family>
    

    有关XML中字体的更多信息,请参见: https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml