-1

こんにちは、同じ描画可能な xml からの等価 ID の背景に問題がありました。

私はこのような2つのトグルボタンでビューを持っています

<ToggleButton
    android:id="@+id/gambar1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/g1"
    android:text=""
    android:textOn=""
    android:textOff="" />

<ToggleButton
    android:id="@+id/toggleButton1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/g1"
    android:text=""
    android:textOn=""
    android:textOff="" />

同じ android:background を使用して、コードに同じ id ソースを取得するにはどうすればよいですか?

私はこのような主な活動をしています

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.gamescene);

    this.tg = (ToggleButton) findViewById(R.id.gambar1);
    this.tg1 = (ToggleButton) findViewById(R.id.toggleButton1);

    tg.setOnClickListener(this);
    tg1.setOnClickListener(this);

}

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub

    if(v == tg){
        Toast.makeText(this, "On " + v.getBackground().getConstantState(), Toast.LENGTH_SHORT).show();
    } else if(v == tg1){
        Toast.makeText(this, "On " + v.getBackground().getConstantState(), Toast.LENGTH_SHORT).show();

    }

}

そして、このような描画可能なxml

<selector xmlns:android="http://schemas.android.com/apk/res/android" >


<item android:state_checked="true" 
    android:state_enabled="true"
    android:drawable="@drawable/bell"/>

<item android:state_checked="false" 
    android:state_enabled="true"
    android:drawable="@drawable/hint"/>

<item android:state_checked="false" 
    android:state_enabled="false"
    android:drawable="@drawable/blank"/>

しかし、同じバックグラウンドから別の状態リストを取得しました。同じリソース名エントリ「g1」をアクティビティにキャッチするにはどうすればよいですか?

私の悪い英語でごめんなさい

ありがとう

4

1 に答える 1

1

これを使えば取れます

getResources().getDrawable(R.drawable.g1);

于 2014-09-26T07:34:36.243 に答える