0

CustomDialog 内に単純な View があります。

public class ColorPickerDialog extends Dialog 
{
    private static class ColorPickerView extends View
    {
        ColorPickerView(Context c, int color) 
        {
             super(c);
             //...
        }
        @Override 
        protected void onDraw(Canvas canvas) {
            //...
        }

        @Override
        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
            setMeasuredDimension(CENTER_X*2, CENTER_Y*2);
        }
    }

    public ColorPickerDialog(Context context,
                             int initialColor) {
        super(context);
        mInitialColor = initialColor;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(new ColorPickerView(getContext(), mInitialColor));
    }
}

このビューに SeekBar を追加するには?

4

1 に答える 1

1

カラー ピッカーとシークバーのコンテナー クラスを作成できます。

たとえば、それらを垂直にレイアウトする場合:

private static class ColorPickerContainer extends LinearLayout {

    private ColorPickerView colorPicker;
    private SeekBar seekBar;

    public ColorPickerContainer(Context context, int initialColor) {
        super(context);
        setOrientation(LinearLayout.VERTICAL);

        colorPicker = new ColorPickerView(context, initialColor);
        addView(colorPicker);

        seekBar = new SeekBar(context);
        addView(seekBar);
    }

    public ColorPickerView getColorPicker() {
        return colorPicker;
    }

    public SeekBar getSeekBar() {
        return seekBar;
    }
}
于 2012-11-22T10:13:51.530 に答える