Editable Spinner在Android中无法正常运行?

时间:2015-02-19 06:29:46

标签: android android-spinner

请找到下面的scrren

enter image description here

在这里,我有Spinner和EditText。用户可以选择微调项目,也可以输入自定义数据(如用户在EditText中输入100)。所以我能够根据位置获得Spinner选择的数据。但是,当我试图在旋转器中的edittext中输入任何数据时,它会自动将光标移到edittext下面。

所以请帮助任何人解决这个问题。谢谢

我已经使用EditText为Spinner完成了以下代码。

ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource( 
                this, R.array.my_array, R.layout.custom_spinner); 
        adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
        spinner_distance.setAdapter(adapter1);

在custom_spinner.xml

    <?xml version="1.0" encoding="utf-8"?>
<EditText xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:id="@+id/custom_edit"

    android:hint="Enter"
    android:singleLine="true"
    android:maxLength="3">
    <requestFocus />
    </EditText>

2 个答案:

答案 0 :(得分:0)

使用自动完成文本视图

   ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( 
            this, R.array.my_array, android.R.layout.simple_list_item_1);  
   AutoCompleteTextView tv=   (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView);  
       tv.setThreshold(1);
       tv.setAdapter(adapter);

在xml文件中替换

 <Spinner ........./> 

以下代码

    <AutoCompleteTextView  
    android:id="@+id/autoCompleteTextView"  
    android:layout_width="match_parent"  
    android:layout_height="wrap_content"  
    android:padding="5dp"   
    android:ems="10"  
    android:text="100">  
    <requestFocus />  
    </AutoCompleteTextView>

答案 1 :(得分:0)

你可以试试这个。

((EditText)spinner_distance.getChildAt(0))。getText()

由于你的微调项目本身就是一个编辑文本,所以这将给你一个edittext值。