1

attrs.xml名custom_valuesにカスタム属性を設定しました。そのうちの1つはstageNumberという名前です。このカスタム値が定義されたボタンがあります。たとえば、goToStageという名前のonClickハンドラーを持つcustom:stageNumber="2"です。goToStageメソッドでは、stageNumberの値を取得する必要があります。getStyledAttributesメソッドに必要なAttributeSetをフェッチできません。

public void goToStage(View view) {
    AttributeSet attrs = ???;
    TypedArray ta = view.getContext().obtainStyledAttributes(attrs, R.attr.custom_values);
    int stageNumber = ta.getInt(R.styleable.custom_values_stageNumber, 0);
    // do something with stageNumber
}

これを解決するための提案はありますか?

4

1 に答える 1

3

ビューの属性にアクセスできるのは、ビューのコンストラクターから、またはカスタム属性でビューを拡張するlayoutInflatorから、拡張プロセス中にのみアクセスできます。後でビューの属性にアクセスする方法はありません。

于 2013-01-17T17:42:35.060 に答える