如何获取 Imageview 图像最可用的颜色?

How to get Imageview image most available color?

我创建了一个 android 布局,其中 imageview.I 需要使用 imageview 中的颜色设置布局背景颜色 image.anyone 知道如何在 Android Java ?

为JFrame添加背景图片,使用Image的getImage()方法class −

 Image img = Toolkit.getDefaultToolkit().getImage("F:\Smartgirl.jpg");

现在画图-

 public void paintComponent(Graphics g) {
 super.paintComponent(g);
  g.drawImage(img, 0, 0, null);
  }

以下是将背景图像添加到 JFrame 的示例 - 范例

  import java.awt.Graphics;
  import java.awt.Image;
  import java.awt.Toolkit;
  import java.io.IOException;
  import javax.swing.JPanel;
   public class SwingDemo extends javax.swing.JFrame {
  Image img = Toolkit.getDefaultToolkit().getImage("F:\Smartgirl.jpg");
   public SwingDemo() throws IOException {
  this.setContentPane(new JPanel() {
     @Override
     public void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.drawImage(img, 0, 0, null);
     }
  });
   pack();
   setVisible(true);
  }
    public static void main(String[] args) throws Exception {
  new SwingDemo();
   }
   }

您可以在这里获得信息:https://developer.android.com/guide/topics/ui/look-and-feel#Drawables

并使用 Palette 你可以实现它。

但是,如果您不介意等待几秒钟来获取颜色,那么有一个简单的解决方案。

public static int getDominantColor(Bitmap bitmap) {
    Bitmap newBitmap = Bitmap.createScaledBitmap(bitmap, 1, 1, true);
    final int color = newBitmap.getPixel(0, 0);
    newBitmap.recycle();
    return color;
}