Выберите длинный текст в spinner, затем создайте пространство
когда я выбираю длинный текст в своем spinner
тогда он создает пространство между textView
и spinner
см. мой spinner
умолчанию:
после выбора длинного текста это выглядит как снимок:
ниже - код xml:
<TextView
style="@style/TextLabelBookGray"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:text="@string/hint_state"
android:textSize="@dimen/_14ssp"
android:paddingLeft="@dimen/_2sdp"
android:visibility="visible" />
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/spStates"
style="@style/TextLabelBookBlack"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="@dimen/_4sdp"
android:layout_marginTop="@dimen/_4sdp"
android:layout_weight="1"
android:entries="@array/us_states"
/>
ниже code is style.xml
:
<style name="TextLabelBookGray" parent="FontBook">
<item name="android:textSize">@dimen/_14ssp</item>
<item name="android:textColor">@color/input_color_gray</item>
кто-нибудь знает, как это исправить
Заранее спасибо:
Ответы
Ответ 1
Дело в том, что ваш textView и spinner разделяют 50% и 50% родительского представления. Лучше вы установите weightSum на родительский вид и выделите большую ширину для поворота. Затем вы можете иметь один текст строки в прядильщике.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="10">
<TextView
style="@style/TextLabelBookGray"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="2.5"
android:text="@string/hint_state"
android:textSize="@dimen/_14ssp"
android:paddingLeft="@dimen/_2sdp"
android:visibility="visible" />
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/spStates"
style="@style/TextLabelBookBlack"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="@dimen/_4sdp"
android:layout_marginTop="@dimen/_4sdp"
android:layout_weight="7.5"
android:entries="@array/us_states"/>
</LinearLayout>
Это рабочий пример и настройте вес в соответствии с вашими потребностями.
Ответ 2
Вы устанавливаете высоту счетчика как "wrap_content", чтобы она автоматически регулировала его высоту. Вы должны установить строку Spinner row Textview max как 1. Затем она не будет отображать двойную линию. Текстовый XML файл
android:maxLines="1"
Ответ 3
Добавляя к ответу @Kush, убедитесь, что ваш родитель также имеет wrap_content, чтобы ваш текст spinner мог отображаться в одной строке. В противном случае он будет выглядеть так же, даже если вы дадите wrap_content вашему счетчику.
Пожалуйста, используйте нижеприведенный код:
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/spStates"
style="@style/TextLabelBookBlack"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="@dimen/_4sdp"
android:layout_marginTop="@dimen/_4sdp"
android:layout_weight="1"
android:maxLines="1"
android:entries="@array/us_states"
/>
Ответ 4
Если вы можете установить ширину прядильной машины в фиксированную сторону и вес выталкивателя, то ваша проблема будет автоматически решена. Buddy..!
<TextView
style="@style/TextLabelBookGray"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:text="@string/hint_state"
android:textSize="@dimen/_14ssp"
android:paddingLeft="@dimen/_2sdp"
android:visibility="visible" />
<android.support.v7.widget.AppCompatSpinner
android:id="@+id/spStates"
style="@style/TextLabelBookBlack"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="@dimen/_4sdp"
android:layout_marginTop="@dimen/_4sdp"
android:entries="@array/us_states"
/>
я надеюсь, что это может вам помочь..!
Ответ 5
вам нужно использовать android: ems в вашем текстовом виде и вынуть линию веса.
введите код ниже в текстовое поле
android:ems="5"
удалите строку ниже
android:layout_weight="2.5"
Надеюсь, поможет...