0

アクセシビリティに関するアンドロイド用のアプリケーションを開発しており、選択したスピナーに応じてボタンの画像を動的にロードする必要があります。添付写真のアプリケーションです。ほとんどの写真はスピナーが空です。クリックするとリストが表示されるので、スピナーで何かを選択すると、ボタンの画像が変わります。例: スピナー - バスルーム (この場所の可能性のイメージ) スピナー - キッチン (この場所の可能性のイメージ)。

OBS: ボタンの操作を簡単にするために、imagebutton を使用しないことにしました。

コードボタン:

 <Button
    android:id="@+id/pic1"
    android:layout_column="2"
    android:layout_columnSpan="3"
    android:layout_gravity="left"
    android:layout_row="2"
    android:drawableBottom="@drawable/pic1"
    android:text="@string/pic1" />

応用

4

2 に答える 2

0

OnItemSelectedListener を実装し、メソッド spinner.setOnItemSelectedListener() を使用してそれをスピナーにアタッチします。

次に、リスナーの onItemSelected() 関数で画像を設定できます。

于 2013-11-07T23:02:10.280 に答える
0

お役に立てれば

public class myActivity extends Activity implements OnItemSelectedListener {
    int[] images = {R.drawable.image01, R.drawable.image02, R.drawable.image03};
    Spinner spinner;
    Button button;

    ...
    private void setView(){
        button = (Button)findViewById(R.id.button);
        spinner = (Spinner)findViewById(R.id.spinner);
        // Register the listener
        spinner.setOnClickListener(myActivity.this);
    }

    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
        // Set the background of the button
        button.setBackgroundResource(images[pos]);
    }

    public void onNothingSelected(AdapterView<?> parent) {
        // Another interface callback
    }
}
于 2013-11-07T23:02:50.977 に答える