2

我有一个微调器,我在其中通过Adapter. 问题是,当微调器在那个时候关闭时,它会以适当的大小将文本显示为完全可读。但是当我们单击微调器并显示文本时,该文本显示我不可读,这意味着带有剪切文本。

此问题仅在 Galaxy Tab 和 Galaxy s3 上发生。意味着屏幕尺寸高。那么请有人可以帮我解决这个问题吗?

微调器的屏幕截图是文本切入微调器,我实际上想要这个
正确的微调器文本

xml 中的 Spinner 代码是

<Spinner
    android:id="@+id/ddCountry"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
/>

我已经设置了一种样式将textcolor设置为黑色,代码是这样的

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <style name="Theme.NoTitleBar.WithColoredSpinners" parent="@android:style/Theme.NoTitleBar">
        <item name="android:spinnerItemStyle">@style/SpinnerItem</item>
        <item name="android:spinnerDropDownItemStyle">@style/SpinnerItem.DropDownItem</item>
    </style>
    <style name="SpinnerItem" parent="@android:style/Widget.TextView.SpinnerItem">
        <item name="android:textColor">#000000</item>
    </style>

    <style name="SpinnerItem.DropDownItem" parent="@android:style/Widget.DropDownItem.Spinner">
        <item name="android:textColor">#000000</item>
     </style>

</resources>

填充微调器中的值的代码如下:

ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(
                Registration.this, android.R.layout.simple_spinner_item, list);
        dataAdapter
                .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner1.setAdapter(dataAdapter);

此代码适用于大多数设备,但是当屏幕尺寸像 Galaxy Tab 一样高时,问题就来了。

4

4 回答 4

1

试试下面的代码:

      <Spinner
android:id="@+id/ddCountry"
android:layout_width="fill_parent"
android:layout_height="20dp"
 />

尝试更改 layout_height 以适合您的微调器

于 2012-09-28T13:31:48.267 回答
0

我得到了解决方案。这是我设置的错误android:anyDensity="false"。所以它在 Galaxy 选项卡中不起作用。

于 2012-09-29T05:13:08.640 回答
0

android:layout_height="wrap_content"

于 2012-09-28T13:38:29.497 回答
0

问题显然出在您的下拉布局中。

与其使用(三星可能已经针对他们的设备进行了修改)的库存下拉布局,不如android.R.layout.simple_spinner_dropdown_item创建自己的并设置文本大小以匹配关闭的微调器。

这可以像将默认值复制到布局目录、更改名称并通过添加/更改文本大小来调整布局本身一样简单。

于 2012-09-28T13:40:48.377 回答