2009-10-09 45 views
6

Tôi đang cố tạo bộ chọn màu cho Android giống như phiên bản tối giản của GIMP. Vì vậy, nó có một thanh trượt màu sắc và một hình chữ nhật với các biến thể bão hòa/giá trị của một màu được chọn trong thanh trượt màu sắc.Bộ chọn màu Android - cập nhật mảng màu

Câu hỏi: cách tốt nhất để tạo hình chữ nhật là gì?

Hiện tại, tôi đang tạo mảng pixel 200x200, nhưng phải mất ~ 5 giây để tạo và hiển thị hình chữ nhật với mảng đó. Và tôi cần màu trong hình chữ nhật để thay đổi bất cứ khi nào tôi thay đổi giá trị trong thanh trượt hue ...

Hình chữ nhật là bitmap, btw. Tôi có thể sử dụng ma trận màu trên đó và không? Bất kỳ ví dụ nào?

Cảm ơn trước!

+0

Không biết về ma trận màu, nhưng bạn có thực sự phải tính toán bitmap hoàn toàn mới khi có thay đổi gì đó không? Có lẽ có một cách nhanh chóng để tính toán một số loại delta? Bạn có phiền khi đăng mã không? Mặc dù tôi không thể giúp bạn, tôi thực sự muốn xem làm thế nào các màu sắc trong rect được tính toán .. – svens

+0

Ma trận màu sắc chắc chắn là con đường để đi! Tôi vừa sáp nhập hai thứ tôi tìm thấy trên mạng và bitmap giờ đang thay đổi màu sắc trong thời gian thực. Tôi cần thêm thời gian để đánh mã, nhưng hãy xem hai liên kết sau: - http://www.anddev.org/viewtopic.php?p=16463 (chỉ cần chú thích ra mPaint.setColorFilter (null);) - http://www.quasimondo.com/archives/000565.php Vì vậy, toàn bộ ý tưởng là tạo một bmp với một đối tượng sơn, và sau đó để thêm một bộ lọc cho sơn đó dưới dạng ColorMatrix. – zorglub76

Trả lời

0

Một khả năng là tạo trước các hình chữ nhật trên PC của nhà phát triển cho từng vị trí thanh trượt, nhúng chúng làm tài nguyên và sau đó hoán đổi ở bên phải khi thanh trượt thay đổi. Điều này có thể làm cho một ứng dụng portly, nhưng nó sẽ được tốt đẹp và nhanh chóng.

Tôi chưa xử lý nhiều API đồ hoạ 2D, vì vậy tôi không biết liệu có các khả năng khác hay không (ví dụ: ma trận màu).

4

OpenIntents có bộ chọn màu rất đẹp mà bạn có thể sử dụng. Nó có thể được cài đặt như một ứng dụng độc lập và được khởi chạy với Intents.

+1

Tất cả các liên kết đều bị hỏng. http://www.openintents.org/action/org-openintents-action-pick-color/ là gần nhất với bộ chọn màu có sẵn trên openintent.org. – Gizmomogwai

8

Bạn có thể tạo hình chữ nhật với các biến thể bão hòa/giá trị mà thay đổi theo màu sắc được lựa chọn, bởi bản vẽ hình chữ nhật với LinearGradients.

Bạn có thể kết hợp mã tại đây: http://code.google.com/p/android-color-picker/ vào ứng dụng của bạn. Có vẻ như đây là những gì bạn muốn.

+0

yuku, bộ chọn màu của bạn trông tuyệt vời! Nhìn vào sử dụng nó cho widget DigiClock, yêu thương nó không cần ý định và các ứng dụng khác được cài đặt, cảm ơn một tấn !!! – DavidG

+0

Tôi đã thêm tiện ích này vào tiện ích DigiClock và cho đến nay người dùng của tôi thực sự ấn tượng. Cảm ơn một lần nữa yuku !! – DavidG

+0

trông rất đẹp, tôi có thể sử dụng :) –

0

Điều này cũng có thể được áp dụng cho bộ chọn màu hình ảnh không?

Sử dụng trường hợp:

  1. Chọn một điểm ảnh đặc biệt về một hình ảnh.
  2. Pixel được chọn tạo ra màu trên hình chữ nhật.
  3. Có thể tạo mã màu cho pixel được chọn?
Các vấn đề liên quan