2012-07-22 18 views

cevap

24

Emin yarı saydam görüntü ile karışır. Sadece bir LayerListDrawable kullanın.

şöyle birşey:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item> 
     <shape android:shape="rectangle" > 
      <solid android:color="#FF00ffff" /> 
     </shape> 
    </item> 
    <item> 
     <bitmap 
      android:src="@drawable/your_tiled_drawable" 
      android:tileMode="repeat" /> 
    </item> 
</layer-list> 

kaydet senin res/drawables dizinde ve arka plan olarak kullanabilirsiniz.

Maalesef, uygulamanız daha karmaşıksa, bazen tileMode görünür bir neden olmadığı için ayarlanmayacaktır. Buna koşarsanız, Java'da karo modunu yeniden eklemeniz gerekir.

Ben genellikle hala xml ayarlayın ve sonra böyle bir şey yapmak:

View v = findViewById(R.id.my_view); 
LayerDrawable lld = (LayerDrawable) v.getBackground(); 
BitmapDrawable tiled = (BitmapDrawable) lld.getDrawable(1); 
tiled.setTileModeXY(TileMode.REPEAT, TileMode.REPEAT); 
+0

Başar, aradığı şeyi bu. – Signcodeindie

+0

@ABentSpoon, tam olarak aradığım şey ama görüntü esnetiliyor. Resmin en boy oranını nasıl koruyabilirim? – Euridice01

0

Evet.

ImageView'u kullanabilirsiniz. Arka plan rengini ayarlayın ve yarı saydam görüntüyü kaynağı olarak ayarlayın. Eğer bir düzene bunu yapmak istiyorsanız

, o düzeni uzatmak ve geçersiz kılınan onDraw'da() içinde, arka plan rengini çizmek ve

Paint p = new Paint(); 
p.setXfermode(new PorterDuffXfermode(Mode.MULTIPLY)); 
İlgili konular