java - 如何将 Spinner 菜单设置为 DropDown 而不是对话框样式?

标签 java android xml android-layout spinner

我创建了一个微调器样式文件,因为我想要一个漂亮的微调器。 现在,如果我单击微调器,我将不再获得默认的下拉菜单,而是一个对话框,用于从微调器中选择一个项目。我怎样才能将其改回下拉菜单?

XML:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/radiosection">


    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/headerkernlochrechner"
        tools:layout_editor_absoluteY="0dp"
        tools:layout_editor_absoluteX="162dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="15dp" />


    <Spinner
        android:id="@+id/steigungsspinner"
        style="@style/SpinnerTheme"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_below="@+id/textView2"
        android:layout_marginTop="62dp"
        android:spinnerMode="dropdown" />
</RelativeLayout>

微调样式:

<style name="SpinnerTheme" parent="android:Widget.Spinner">
        <item name="android:background">@drawable/bg_spinner</item>
</style>

和 Spinner 风格的背景:

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

    <item>

        <layer-list>

            <item>
                <shape>
                    <gradient android:angle="90" android:endColor="#ffffff" android:startColor="#ffffff" android:type="linear" />

                    <stroke android:width="0.33dp" android:color="#0fb1fa" />

                    <corners android:radius="0dp" />

                    <padding android:bottom="3dp" android:left="3dp" android:right="3dp" android:top="3dp" />
                </shape>
            </item>

            <item android:right="5dp">

                <bitmap android:gravity="center_vertical|right" android:src="@android:drawable/arrow_down_float" />

            </item>

        </layer-list>

    </item>

</selector>

谢谢你的帮助:D

最佳答案

现在我找到了答案: 我必须在微调器的 XML 中添加以下行:

android:spinnerMode="dropdown"

现在可以了!

关于java - 如何将 Spinner 菜单设置为 DropDown 而不是对话框样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45232231/

相关文章:

java - 为什么在 catch InterruptException block 中调用 Thread.currentThread.interrupt()?

java - 如何根据我的平台确定正交相机的宽度和高度?

java - 如何从 java http 请求读取 XML?

python - (Python) 如何获取xml中节点的级别?

Java Akka 调度 API 抛出 MissingMethodException

java - 为什么android模拟器相机意外停止?

java - 在java中使用递归返回树的后序表达式的问题

android - LayoutParams 返回 null

android - Dagger : Can't provide Map<java. lang.Class<? extends android.arch.lifecycle.ViewModel> 没有 @Provides-annotated 方法

Textview和复选框的Android布局对齐