コンテナーからすべての子に状態の変更を適用するカスタム複合コントロールを作成するときの適切なメカニズムを知っている人はいますか? ViewGroup
すべての状態の変更 (押されている、有効になっているなど) を各子に転送するように設定する簡単な方法があるはずです。
たとえば、次の行に沿ってカスタム ウィジェットを作成するとします。
public class MyWidget extends RelativeLayout {
private TextView mTitleView, mValueView;
private ImageView mImageView;
public ValueButton(Context context) {
this(context, null);
}
public ValueButton(Context context, AttributeSet attrs) {
super(context, attrs);
//View setup, etc.
}
}
多くの場合、ウィジェット全体に変更が適用されるときに切り替えたい子に描画可能リストまたはカラー ステート リストがアタッチされています。このようなウィジェットに何を追加すれば、たとえば、呼び出しMyWidget.setEnabled()
たときやMyWidget
押されたときに、これらの状態の変化が階層の下にフィルター処理されるようにする必要がありますか?
ありがとう!