如何右键对齐Android微调器

gre*_*qrl 6 layout android spinner right-align

我正在尝试右对齐Android微调器的文本.我已经通过Stack Overflow并尝试了推荐的解决方案,但它不适合我,所以,我对我做错了什么有点困惑.我的感觉是,由于我犯了错误,我的布局没有被正确拾取.

我的activity.xml文件

<Spinner
android:id="@+id/spinnerStoreType"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"/>
Run Code Online (Sandbox Code Playgroud)

在res\layout下,我创建了一个名为simple_spinner_item.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:textSize="40sp"
    android:textColor="#FFFFFF"
    android:padding="10dip"
    android:gravity="right"
    />
Run Code Online (Sandbox Code Playgroud)

最后,在我的活动中,我使用如下:

spinnerStoreType = (Spinner) findViewById(R.id.spinnerStoreType);
ArrayAdapter<CharSequence> adapter =    
ArrayAdapter.createFromResource(this,
R.array.transaction_store_array, android.R.layout.simple_spinner_item);

adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
spinnerStoreType.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

所以,我相信正在使用的simple_spinner_item是默认的,Android的.我不清楚如何使用我的自定义.我认为如果它有相同的名称会自动发生?

我们非常感谢任何帮助.

San*_*t A 6

您可以使用样式完全实现此目的。我认为这是最好的方法。这是我的styles.xml中的代码

    <style name="AppTheme.Spinner">
        <item name="android:spinnerItemStyle">@style/SpinnerItem</item>
        <item name="android:spinnerDropDownItemStyle">@style/SpinnerDropDownItem</item>
    </style>

    <style name="SpinnerItem">
        <item name="android:gravity">right|center_vertical</item>
        <item name="android:paddingRight">16dp</item>
    </style>

    <style name="SpinnerDropDownItem">
        <item name="android:gravity">right|center_vertical</item>
        <item name="android:paddingRight">16dp</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

这是旋转器的实现-

       <Spinner
            android:id="@+id/type"
            android:layout_width="match_parent"
            android:layout_height="48dp"
            android:layout_below="@id/title"
            android:entries="@array/data"
            android:theme="@style/AppTheme.Spinner" />
Run Code Online (Sandbox Code Playgroud)

  • 那不是问题,您已经自定义了项目布局和下拉菜单布局。您无需触摸布局xml即可完成操作。 (2认同)

小智 3

android.R.layout.simple_spinner_item指的是android库中的微调项目,并且不会具有您的自定义属性。您应该使用 来引用您自己的R.layout.simple_spinner_item布局。