2013-07-31 71 views
1

我要輸入文字時,我選擇選項「其他」當我選擇一個選項時,如何編輯文本?

Spinner spn; 
........ 
adapterString = new String[] 
{ 
    "A", 
    "B", 
    "Other" 
}; 
ArrayAdapter<String> adptLubricatorType = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, adapterString); 
spn.setAdapter(adptLubricatorType); 
spn.setOnItemSelectedListener(listenerspn); 
private Spinner.OnItemSelectedListener listenerspn = new Spinner.OnItemSelectedListener() { 

    @Override 
    public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, 
      long arg3) { 


    } 

我怎樣才能插入文字時,我拉下了微調,然後選擇「其他」?

我希望我可以輸入喜歡的EditText,當我點擊其他的事情,「其他」將改變 字符串,我只是輸入

回答

0

始終有一個EditText,但將其可見性設置爲INVISIBLE的XML文件。然後,當您檢測到所選項目是"Other"時,將VISIBILITY設置爲VISIBLE。像

@Override 
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, 
     long arg3) { 
    //get the item selected item. Compare to the itme for which you want to make the EditText visible 
    if(spn.getSelectedItem().toString().equals("Other"){ 
     yourEditText.setVisibility(View.VISIBLE); 
    } 

}  

東西然後你就可以有onClickListener等處理EditText像往常一樣 希望你得到別人的概念,請發表評論。

1

可能創建一個警告對話框和編輯文本添加到:

final AlertDialog.Builder alert = new AlertDialog.Builder(this); 
final EditText input = new EditText(this); 
alert.setView(input); 
0

使用setVisibility()來切換edittext.Here的可見性是工作的代碼片段,

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    other = (EditText)findViewById(R.id.other); 
    other.setVisibility(View.GONE); 
    Spinner spn = (Spinner)findViewById(R.id.spinner1); 
    String[] adapterString = new String[] 
    { 
     "A", 
     "B", 
     "Other" 
    }; 
    ArrayAdapter<String> adptLubricatorType = new ArrayAdapter<String>(this, 
    android.R.layout.simple_spinner_item, adapterString); 
    spn.setAdapter(adptLubricatorType); 

    Spinner.OnItemSelectedListener listenerspn = new Spinner.OnItemSelectedListener() { 

}

版式文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent> 


    <Spinner 
     android:id="@+id/spinner1" 
     android:layout_width="0dp" 
     android:layout_weight="2" 
     android:layout_height="wrap_content" /> 

    <EditText 
     android:id="@+id/other" 
     android:layout_width="0dp" 
     android:layout_weight="1" 
     android:layout_height="wrap_content"/> 


</LinearLayout> 
相關問題