0

次のようにデータが動的にロードされるスピナーがあります

final  String[] sku = CrownApplication.mDb.getAllSKUs(Qsearch);
                if((sku.length>=1)){ 
                ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(CrownTakeOrder.this,android.R.layout.simple_spinner_item, sku);
                dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                mSpner.setAdapter(dataAdapter);

                }

これは正常に機能します。クリックすると値を取得し、他のフィールドを空白に設定するボタンがあります(例:以下のようにEdittext)。唯一の問題は、スピナーをクリアできないことです。そのため、他のすべてがクリアされると、スピナーは古い値のままになります。

if (!mError) {
                mSKU = mSpner.getSelectedItem().toString();
                Qsearch =mQuery.getText().toString();
                quantity =mQuantity.getText().toString();
                String[] parts = mSKU.split(" - ");
                str1 = parts[0];  
                str2 = parts[1];   

                addBody(Qsearch,mSKU,quantity);

                mQuery.setText("");
                mTxtview.setText("");
                mQuantity.setText("");
                mSKU = "empty";

               //mSpner.setAdapter(null);

            } 

使ってみました

 mSpner.setAdapter(null);

しかし、私のアプリはクラッシュします....スピナーを空にする方法は?私はコーディングしています

android:minSdkVersion="11"
    android:targetSdkVersion="15"
4

1 に答える 1

2

これを試して

mSpner.setAdapter(new ArrayAdapter<String>(CrownTakeOrder.this, android.R.layout.simple_spinner_item, new String[]));
于 2013-03-18T13:20:56.547 に答える