0

XML で 3 つの Relativelayout ビューを次々に設定しています。onCreate メソッドで、3 つのビューすべてを初期化し、setEnabled() を false に設定しました。次に、スピナーを設定し、それぞれのボタンがクリックされたときに各ビューを有効にしたいと考えています。これを行う方法はありますか?これまでのところ(スピナーで)持っています:

        public void onItemSelected(AdapterView<?> parent, View arg1,
                int position, long arg3) {
            // TODO Auto-generated method stub
            if (parent.getItemAtPosition(position).equals("Quantity")) {
                calSelectInt = 1;
                calSeek.setEnabled(true);
                calWeight.setEnabled(false);
                calFlour.setEnabled(false);
            } else if (parent.getItemAtPosition(position).equals("Dough Weight")) {
                calSelectInt = 2;
                calSeek.setEnabled(false);
                calWeight.setEnabled(true);
                calFlour.setEnabled(false);
            } else if (parent.getItemAtPosition(position).equals("Flour Weight")) {
                calSelectInt = 3;
                calSeek.setEnabled(false);
                calWeight.setEnabled(false);
                calFlour.setEnabled(true);
            }
        }

cal___ は各ビューを表します。calSelectInt は、それぞれに Integer を設定し、各 Integer が読み取られるときに別のメソッドを呼び出す試みです。

その結果、実行すると 3 つのビューすべてが表示されますが、何かアイデアはありますか? setEnabled が機能しないのはなぜですか? または、私のコードがよく考えられていません。ありがとう

4

1 に答える 1

0

setEnabled(boolean) の代わりに setVisibility(View.GONE) と (View.VISIBLE) を設定する必要がありました。奇妙なことに、その方法は過去に他のことでうまくいかなかったようですが、ちょっと.

于 2013-10-24T10:24:06.903 に答える