【问题标题】:Set Spinner adapter then EditText input type changed设置 Spinner 适配器,然后更改 EditText 输入类型
【发布时间】:2018-04-24 14:17:01
【问题描述】:

我已将微调器设置为 ArrayAdapter 作为字符串列表。

                        // Creating adapter for spinner
                        ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(LoginActivity.this, R.layout.row_spinner, countryCodeList);
                        dataAdapter.setDropDownViewResource(R.layout.row_spinner);

                        // attaching data adapter to spinner
                        spinnerCountryCode.setAdapter(dataAdapter);

在此设置微调器适配器成功但 LoginActivity 我还有其他 EditText 控件作为 InputType 编号。

我的问题是在微调器适配集点击 Edittext 然后首先打开数字键盘,然后在立即打开系统文本键盘之后。

我还将 EditText 输入类型设置为数字

android:inputType="number" 

而manifest文件设置windowSoftInputMode为

android:windowSoftInputMode="stateAlwaysHidden|adjustPan"

请给我一些解决方案。 提前谢谢..!

【问题讨论】:

  • 请解释清楚你的问题和你想做什么。
  • @Thunder 我的问题是点击 EditText 然后打开数字键盘。
  • 好的,所以设置 android:inputType="number" 后,发生了什么问题,请解释一下,我可以帮助你。
  • 设置 android:inptType="number" 然后打开数字键盘,但实际上我在同一个活动中设置了微调器适配器,所以如果我评论 spinnerCountryCode.setAdapter(dataAdapter); 点击 EditText number keyboard not open然后正常工作
  • 在下面查看我的答案,如果它解决了您的问题,请告诉我。

标签: android android-edittext spinner


【解决方案1】:

您的 R.layout.row_spinner 有问题,尝试添加 android.R.layout.simple_spinner_item 代替 R.layout.row_spinner 并运行一次

   ArrayList<String> values;

 values = new ArrayList<>();
        values.add("value1");
        values.add("value1");
        values.add("value1");
        values.add("value1");

        // Creating adapter for spinner
        ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_item, values);
        dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_item);

        // attaching data adapter to spinner
        spinner.setAdapter(dataAdapter);

【讨论】:

  • 感谢@Thunder 的帮助,但我已经尝试过了,它不适合我。
  • 尝试在您的微调器中设置 android:focusable=false。
  • 仍然无法正常工作。我的微调器行文件如下:&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:text="" android:focusable="false" android:textSize="@dimen/_12sdp" android:tag="1000" android:id="@android:id/text1" /&gt;
  • 分享您的完整活动代码和 xml 代码,以便我可以尝试并帮助您解决问题。
  • 感谢您的帮助@Thunder,是的,我的R.layout.row_spinner 文件有问题。如果我改为android.R.layout.simple_spinner_item,那么工作正常。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-29
相关资源
最近更新 更多