-1

main.xml:

<RelativeLayout 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" >


    <ScrollView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:text="Choose Details"
            android:id="@+id/textView"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"/>

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:text="Year"
            android:id="@+id/textView2"
            android:layout_below="@+id/textView"
            android:layout_alignParentLeft="true"/>

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:text="Branch"
            android:id="@+id/textView3"
            android:layout_below="@+id/textView2"
            android:layout_alignParentLeft="true"/>

    <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:text="Semester"
            android:id="@+id/textView4"
            android:layout_below="@+id/textView3"
            android:layout_alignParentLeft="true"/>

    <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/spinner"
            android:layout_below="@+id/textView"
            android:layout_alignParentRight="true"
            android:layout_above="@+id/textView3"/>

    <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/spinner2"
            android:layout_below="@+id/spinner"
            android:layout_alignParentRight="true"
            android:layout_alignBottom="@+id/textView3"/>

    <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/spinner3"
            android:layout_below="@+id/spinner2"
            android:layout_alignParentRight="true"
            android:layout_alignBottom="@+id/textView4"/>


</RelativeLayout>

文字列.xml:

    <string name="app_name">SRMSyl</string>
    <string name="hello_world">Hello world!</string>
    <string name="menu_settings">Settings</string>
    <string name="title_activity_main">MainActivity</string>
    <string-array name="spinner">
        <item>Malaysia</item>
        <item>United States</item>
        <item>Indonesia</item>
        <item>France</item>
        <item>Italy</item>
        <item>Singapore</item>
        <item>New</item>
        <item>India</item>
    </string-array>
    <string-array name="spinner2">
        <item>Malaysia</item>
        <item>United States</item>
        <item>Indonesia</item>
        <item>France</item>
        <item>Italy</item>
        <item>Singapore</item>
        <item>New</item>
        <item>India</item>
    </string-array>
    <string-array name="spinner3">
        <item>Malaysia</item>
        <item>United States</item>
        <item>Indonesia</item>
        <item>France</item>
        <item>Italy</item>
        <item>Singapore</item>
        <item>New</item>
        <item>India</item>
    </string-array>

</resources>

main.xmlとを与えましたstrings.xml。スピナーのアイテムが画面に表示されない理由を知りたいと思っていました。デバイスのスピナーをクリックしてもリストが表示されません。私は正しいスピナー要素を参照していませんか、それとも何かが欠けていますか?

4

3 に答える 3

3

XML から項目を直接設定するには、項目に値Spinnerを指定する必要があります。android:entries

android:entries="@array/array_name"

http://developer.android.com/reference/android/widget/AbsSpinner.html#attr_android:entries

Spinner を設定する配列リソースへの参照。静的コンテンツの場合、Spinner をプログラムで設定するよりも簡単です。

だからあなたの場合:

<Spinner
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/spinner"
    android:entries="@array/spinner"
    android:layout_below="@+id/textView"
    android:layout_alignParentRight="true"
    android:layout_above="@+id/textView3"/>

等々...

于 2013-06-25T08:30:36.080 に答える
1

Spinner データを動的に入力する場合は、Ken Wolf の回答の代わりに、次のようにします。

最初Spinnersに以下のように初期化します。

Spinner spn1  = (Spinner)findViewById(R.id.spn1);
Spinner spn2  = (Spinner)findViewById(R.id.spn2);
Spinner spn3  = (Spinner)findViewById(R.id.spn3);

次に、ArrayAdapter以下のように String 配列を追加します。

ArrayAdapter<String> adapter1= new ArrayAdapter<String(this,android.R.layout.simple_spinner_item, R.array.array_spinner1);
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
ArrayAdapter<String> adapter2= new ArrayAdapter<String(this,android.R.layout.simple_spinner_item, R.array.array_spinner2);
adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
ArrayAdapter<String> adapter3= new ArrayAdapter<String(this,android.R.layout.simple_spinner_item, R.array.array_spinner3);
adapter3.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

次に、ArrayAdapter を Spinner に追加して、以下のようにすべての配列データのリストを設定します。

spn1.setAdapter(adapter1);
spn2.setAdapter(adapter1);
spn3.setAdapter(adapter1);
于 2013-06-25T09:25:39.130 に答える