0

スピナーから特定のアイテムが選択されたときに EditText を表示しようとしています。これまでのところ、スピナーと EditText を作成しましたが、次のステップが何であるかはよくわかりません。EditText に選択範​​囲を表示したくありません。EditText フィールドを表示したいだけです。

 @Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final EditText editText = (EditText) findViewById(R.id.edit_text_box);
    editText.getText().toString();




}


public void addItemsOnSpinner()
{
    spinner1 = (Spinner) findViewById(R.id.spinner);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource
    (this, R.array.spinner_item, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner1.setAdapter (adapter);

}

public void onItemSelected(AdapterView<?> spinner1, View view,int pos, long id)
{

        editText.setText(spinner1.getSelectedItem());

}

これは私が文字列配列に持っているものでもあります+ item2が選択されたときにのみ編集テキストボックスを表示したいです

<string-array name="spinner_item">
    <item>Item 1</item>
    <item value="Item2">Item 2</item>
    <item>Item 3</item>
    <item>Item 4</item>
</string-array>
4

6 に答える 6

2
    spinner1.setOnItemSelectedListener(new OnItemSelectedListener() {

        public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            int x = spinner1.getSelectedItemPosition();
            valSel = items[x];
    }
String spinner1val = spin1.getText().toString();         //extract value of text from spinner

EditText text = (EditText) findViewById(R.id.EditText1);  //get id of EditText box
text.setText(spinner1val);

または、Spinner で選択したアイテムの値を確認する場合は、「valsel」に値が含まれます。ヴァルセルをトーストするだけ。

于 2012-09-07T11:47:30.237 に答える
2

の可視性をeditTextXML で invisible または gone に設定する必要があります。どちらがニーズに適しているかによって異なります。次に、次を使用して表示させることができます。

public void onItemSelected(AdapterView<?> spinner1, View view, int pos, long id)
{
    yourEditText.setVisibility(View.VISIBLE);
}
于 2012-09-07T11:28:40.817 に答える
0

edittext にテキストを設定する必要がありますonItemSelected。まず、MKJParekh Suggest に従って変更を行います。

public void onItemSelected(AdapterView<?> spinner1, View view,int pos, long id)
{
   yourEditText.setText(spinner1.getSelectedItem())
}
于 2012-09-07T11:25:33.187 に答える
0

スピナーから選択した値を取得し、

String anyvariable=String.valueOf(spin.getSelectedItem());

これで、この文字列値を編集テキストに表示できます。

EditText text = (EditText) findViewById(R.id.your_text);
text.setText(anyvariable);
于 2012-09-07T11:28:08.880 に答える
0
        @Override
        public void onItemSelected(AdapterView<?> month, View arg1,int arg2, long arg3) {
            // TODO Auto-generated method stub
            selectedMonth=  month.getItemAtPosition(arg2).toString();
            Log.d("Tag",""+selectedMonth);
        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub
            //selected_item=    arg0.getChildAt(1).toString();

        }
        });

        selected_item contains the item ,so just set it to editView like
         editView.setText(selected_item)    
于 2012-09-07T11:33:16.660 に答える