【问题标题】:Rainbow colour picker android彩虹颜色选择器android
【发布时间】:2017-12-14 07:27:55
【问题描述】:

我想创建一个彩虹颜色选择器,它具有所有阴影,如屏幕截图所示。我搜索了很多,但没有得到任何对我有帮助的东西。我有一个演示,我可以将Array 的颜色代码提供给选择器。但由于有很多色调,我认为这不是最好的方法。

【问题讨论】:

  • 试试这个:github.com/Madrapps/Pikolo。它具有您正在寻找的东西,但采用 Arc 方式。您可以参考代码并根据需要进行修改。

标签: android color-picker


【解决方案1】:

使用此代码:

import android.annotation.SuppressLint;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.SeekBar;
import  android.support.v4.graphics.ColorUtils;


public class MainActivity extends AppCompatActivity {

ImageView im;
float[] hsl = {0f,.65f,0.5f};//Position 0 = hue , 1 saturation, 2= lightness
@SuppressLint("ClickableViewAccessibility")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    SeekBar sb = findViewById(R.id.seekBar);
    //design your custom seek bar to make look like that
    im = findViewById(R.id.imageView);
    sb.setMax(360);



    sb.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
            hsl[0] = progress;
            int color = ColorUtils.HSLToColor(hsl);
            im.setBackgroundColor(color);


        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {

        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {

        }
    });



}
}

【讨论】:

  • 但是如何赋予不同的颜色呢?
  • 这个问题不太清楚。如果要更改搜索栏的外观,请使用自定义搜索栏并更改背景和拇指。请参阅此link 或此link
  • 颜色可以从行 int color = ColorUtils.HSLToColor(hsl);在 seekbarchange 监听器下
  • 好的,我明白了。但是 ColorUtils.HSLToColor(hsl) 没有给出正确的值。对于进度0,它应该是红色仪式的阴影?但我没有得到红色。并且颜色值长度为 7 和它的负数。请参考所附图片。
  • 看你必须微调 hsl 数组中的值。想想如果你需要更深的红色,你需要改变饱和度。我的意思是你必须修改 hsl 的值。请参阅this link to know more about HSL colors 并查看此page 以了解 android 部分。而且我无法理解你在说什么颜色值长度。
猜你喜欢
  • 1970-01-01
  • 2013-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-10
  • 1970-01-01
相关资源
最近更新 更多