2017-01-09 3 views
1

私は1つのbgカラーでキャンバスを作ろうとしていますが、動作しません。 おそらく同じ色とビットマップの配列を作成できますが、可能であればそれを避けたいと思います。 RE:Android canvas change background colorバックグラウンドキャンバスのペイント方法アンドロイドの同じ色のキャンバス

private void addCustomMarker(GoogleMap map, ActivePoint a, LatLng latLng) { 
     Bitmap.Config conf = Bitmap.Config.ARGB_8888; 
     Bitmap userBmp = Utils.decode(a.mCreatorUser.getmImgBase64Thumb()); 
     Bitmap dogBmp = Utils.decode(a.mCreatorDog.getmImgBase64Thumb()); 

     int border_width = 10; 

     int width, height = 0; 
     width = userBmp.getWidth() + dogBmp.getWidth(); 
     height = userBmp.getHeight() > dogBmp.getHeight() ? userBmp.getHeight() : dogBmp.getHeight(); 
     Bitmap cs = Bitmap.createBitmap(width+border_width*2, height+border_width*2, Bitmap.Config.ARGB_8888); 

     Canvas canvas1 = new Canvas(cs); 

    // modify canvas 

     canvas1.drawARGB(0, 0x3F, 0x51, 0xB5); 
//  canvas1.drawColor(ContextCompat.getColor(this,R.color.primary), PorterDuff.Mode.CLEAR); 

// add marker to Map 
     map.addMarker(new MarkerOptions().position(latLng) 
       .icon(BitmapDescriptorFactory.fromBitmap(cs)) 
       // Specifies the anchor to be at a particular point in the marker image. 
       .snippet(a.mId) 
       .anchor(0.5f, 1)); 
    } 
+0

現在スクリーンショットを投稿できますか? – Houssni

+0

マップが表示され、目に見えないボックスが表示されます。私はそれらをタップしてツールチップを得ることができるので、彼らがそこにいることを知っています。 –

+0

私はそれを考え出しました、PorterDuffの部分のないdrawColorを使用しなければなりません。canvas1.drawColor(Color.WHITE); –

答えて

0

PorterDuff.Mode.CLEARは、彼らがが地図上ている間、あなたがその引数を削除し、それらを見ない理由です、それが透明になります。

関連する問題