调色板库不返回我想要的颜色代码。为什么?

时间:2017-01-08 10:45:56

标签: android android-palette

我创建了一个应用程序,它首先捕获图像,然后将鲜艳调色板的颜色应用于文本。

这是我的代码:

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn = (Button)findViewById(R.id.btn);
        iv = (ImageView)findViewById(R.id.iv);
        tv = (TextView)findViewById(R.id.tv);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent c = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(c,0);
            }
        });
    }
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        Bitmap imageBitmap = (Bitmap) data.getExtras().get("data");
        iv.setImageBitmap(imageBitmap);
        iv.setScaleType(ImageView.ScaleType.FIT_XY);
        if (imageBitmap != null && !imageBitmap.isRecycled()) {
            Palette palette = Palette.from(imageBitmap).generate();
            Palette.PaletteAsyncListener paletteAsyncListener = new Palette.PaletteAsyncListener() {
                @Override
                public void onGenerated(Palette palette) {
                    int defaultColor = 0x000000;
                    int vibrant = palette.getVibrantColor(defaultColor);
                    tv.setTextColor(vibrant);
                }
            };
        }
    }

但是,此代码不会更改textview的颜色。

当我尝试打印那个整数时,它会返回长数,你知道出了什么问题吗?

0 个答案:

没有答案