2010年5月5日水曜日

Android ColorPickerDialog を作った

Android にはユーザーに色(Color)を選択してもらうための
デフォルトのUIが用意されていません。

ApiDemo のなか(com.example.android.apis.graphics)
には ColorPickerDialog.java があるのですが、
選択できるのは色相だけです。

なので、彩度と明度も選択できるように
カスタマイズした my ColorPickerDialog を
恥ずかしながら公開します。

HSV色空間 by wikipedia

Dialog を継承したクラスなので、こんな感じで使います。
第1引数は Context, 第2引数は色が選択された時の listener,
第3引数はダイアログに渡す初期色です。


int selectColor;

ColorPickerDialog mColorPickerDialog;

mColorPickerDialog = new ColorPickerDialog(this,
new ColorPickerDialog.OnColorChangedListener() {
@Override
public void colorChanged(int color) {
selectColor = color;
}
},
Color.BLACK);

mColorPickerDialog.show();


source はこちら

ColorPickerDialog


8 コメント:

  1. アドエス小物日記というBlogを書いているJiroと申します。
    この度、拙作「aGrep」にY.A.M様のカラーピッカーを流用させて頂きました。
    また日頃の記事にもたびたび助けていただいたこともあります。
    一言お礼をと思い、こちらに記させて頂きます。
    ありがとうございました。

    返信削除
  2. はじめまして。
    CreoSproutというサークルを運営している青柳と申します。
    この度、弊サークルで開発しているツール"CreamSplash"内で、Y.A.M様のColorPickerをカスタム利用させて頂きました。
    お礼申し上げます。

    #度々Y.A.M様のブログは参考にさせて頂いております。開発情報公開ありがとうございます。

    http://ahirujigen.blog97.fc2.com/
    http://creosprout.blogspot.com/

    返信削除
  3. はじめまして。
    いつもブログ記事を参考にさせていただいております。
    『A・文庫』という拙作アプリで yanzm 様の ColorPickerDialog を流用させていただきました。
    お礼かたがたご報告申し上げます。
    ありがとうございました。

    返信削除
  4. はじめまして。
    株式会社イントリニティー Androidアプリ開発者の平澤と申します。
    Y.A.M様のブログも本(Android Layout Cookbook)も開発の参考にさせていただいております。
    この度、弊社のアプリ"秒時計ウィジェット"にてY.A.M様のColorPickerDialogを流用させていただきました。
    ありがとうございました。

    返信削除
  5. はじめまして。
    いつもブログ記事を参考にさせていただいております。
    「GamesViewer」を開発している鈴木と申します。
    yanzm様のColorPickerDialogをカスタム利用いただきました。

    お礼とご報告を申し上げます。
    ありがとうございました。

    返信削除
  6. はじめまして。
    Androidアプリを開発しておりますsanzuiと申します。
    この度、拙作「Sticky!」にてyanzm様のColorPickerDialogをカスタマイズ利用させてもらいました。
    一言お礼とご報告をと思い、投稿いたしました。
    ありがとうございました。

    返信削除
  7. はじめまして、アンドロイドアプリを個人で開発しております五藤と申します。

    「PhotoFashion」にて、Y.A.M様のColorPickerDialogを流用させて頂きました。

    ありがとうございました。

    返信削除
  8. はじめまして、アンドロイドアプリを個人で開発しておりますtatncorpと申します。

    「CallGuard」にて、Y.A.M様のColorPickerDialogを流用させて頂きました。

    ありがとうございました。

    返信削除