2014-07-01 24 views
5

có phương pháp dựa trên hệ thống để gọi một trong những bộ chọn màu đó, như trong ứng dụng Lịch Google không? Hay tôi có nó để tự xây dựng nó?Bộ chọn màu Lịch Google

enter image description here

+0

bạn muốn bảng chọn màu gì? –

+0

có bộ chọn màu android http://code.google.com/p/android-color-picker/ –

+0

http://v4all123.blogspot.ie/2013/06/simple-colorpicker-for-android.html –

Trả lời

5

Bạn cần phải sử dụng Color Picker Collection.

Thực hiện:

ColorPickerDialog colorcalendar = ColorPickerDialog.newInstance(
       R.string.color_picker_default_title, 
       mColor, 
       mSelectedColorCal0, 
       5, 
       Utils.isTablet(this)? ColorPickerDialog.SIZE_LARGE : ColorPickerDialog.SIZE_SMALL); 

    //Implement listener to get selected color value 
    colorcalendar.setOnColorSelectedListener(new ColorPickerSwatch.OnColorSelectedListener(){ 

       @Override 
       public void onColorSelected(int color) 
       { 
        // ADD MARKER 
        Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.ic_mobileedge_navpoint); 
        bmp = changeBitmapColor(bmp, color); 

        googleMap.addMarker(new MarkerOptions() 
        .position(latLng) 
        .title("My Spot") 
        .snippet("This is my spot!") 
        .icon(BitmapDescriptorFactory.fromBitmap(bmp))); 
       } 

    }); 

    colorcalendar.show(getFragmentManager(),"cal"); 

Chức năng thay đổi màu bitmap:

private Bitmap changeBitmapColor(Bitmap sourceBitmap, int color) { 

     Bitmap resultBitmap = Bitmap.createBitmap(sourceBitmap, 0, 0, 
       sourceBitmap.getWidth() - 1, sourceBitmap.getHeight() - 1); 
     Paint p = new Paint(); 
     ColorFilter filter = new LightingColorFilter(color, 1); 
     p.setColorFilter(filter); 

     Canvas canvas = new Canvas(resultBitmap); 
     canvas.drawBitmap(resultBitmap, 0, 0, p); 

     return resultBitmap; 
    } 

Tôi đã thử nghiệm và nó làm việc tốt! Điểm đánh dấu phải là màu trắng với alpha, chỉ sau đó là màu sắc sẽ hoàn hảo!

+0

Bạn có thể xây dựng trên cùng một số – prat

+0

@prat không? – extmkv

+0

Tôi cũng có yêu cầu tương tự như đã nêu ở trên. Thư viện mà bạn đã tuyên bố phù hợp với yêu cầu của tôi. Bạn có thể giúp tôi sử dụng thư viện không? – prat

Các vấn đề liên quan