3

私のアクティビティには 2 つのスピナーがあります。スピナーの 1 つである comExpiry は、別のスピナーである comSpinner から選択された値に基づいて入力されます。ただし、ICS を実行しているエミュレーターで comExpiry のテキストと背景色の両方が白に設定されているときに comSpinner が正しく表示され、読み取り不能になるという問題が発生しています。

Froyo と Gingerbread の両方で問題なく動作することに注意してください。comSpinner に付属しているリスナーを削除すると、意図したとおりにスピナーが表示されることに気付きました。私はどこでも見ましたが、解決策が見つかりません。どんな助けでも大歓迎です。

comSpinner = (Spinner) findViewById(R.id.watchListSpinnetComm);
comExpiry = (Spinner) findViewById(R.id.watchListSpinnerExpiry);

ArrayAdapter<String> expAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,
        McxCommApp.comSelect.get(0));
expAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
comExpiry.setAdapter(expAdapter);


myAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, McxCommApp.comName);
myAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

comSpinner.setAdapter(myAdapter);
comSpinner.setOnItemSelectedListener(new myListener());

ItemSelectedListener コードは次のとおりです。

public class myListener implements OnItemSelectedListener {

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

        expAdapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.spinner_a,
                McxCommApp.comSelect.get(pos));
        expAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        comExpiry.setAdapter(expAdapter);   
    }

    public void onNothingSelected(AdapterView<?> parent) {
        // Do nothing.
    }
}

レイアウトを定義する XML セグメント:

<TableRow
    android:id="@+id/watchListTable"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <Spinner
        android:id="@+id/watchListSpinnetComm"
        android:layout_height="32dip"
        android:layout_column="1"
        android:layout_gravity="center_vertical"
        android:paddingLeft="5dip" />

    <Spinner
        android:id="@+id/watchListSpinnerExpiry"
        android:layout_width="145dip"
        android:layout_height="32dip"
        android:layout_column="2"
        android:layout_gravity="center_vertical"
        android:paddingLeft="5dip" />

    <Button
        android:id="@+id/watchListAdd"
        android:layout_width="wrap_content"
        android:layout_height="40dip"
        android:layout_gravity="center_vertical"
        android:text="+"
        android:textAppearance="?android:attr/textAppearanceLarge" />
</TableRow>
4

0 に答える 0