最近開發App,美工設計了一個有鋸齒邊沿效果的背景圖,只給了我一個鋸齒,然後需要平鋪展示鋸齒效果:
android中實現平鋪圖片有兩種方式:
(1)在drawable中的drawable檔案中定義平鋪的Bitmap
<?xml version="1.0" encoding="utf-8"?><bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@mipmap/ic_border_cupons_left" android:tileMode="repeat" ></bitmap>
(2)在代碼中設定
/** * 初始化鋸齒背景 * @param holder */ private void initViewBg(ViewHolder holder) { // 設定內容地區平鋪的小圓角背景 Bitmap topBitmap = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.ic_border_cupons_left); BitmapDrawable leftDrawable = new BitmapDrawable(mContext.getResources(), topBitmap); leftDrawable.setTileModeY(Shader.TileMode.REPEAT); Bitmap bottomBitmap = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.ic_border_cupons); BitmapDrawable rightDrawable = new BitmapDrawable(mContext.getResources(), bottomBitmap); rightDrawable.setTileModeY(Shader.TileMode.REPEAT); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { holder.favourItemBgLeft.setBackground(leftDrawable); holder.favourItemBgRight.setBackground(rightDrawable); } else { holder.favourItemBgLeft.setBackgroundDrawable(leftDrawable); holder.favourItemBgRight.setBackgroundDrawable(rightDrawable); } }
其中第一種在xml檔案中設定部分機型可能出現適配問題,所以這裡推薦使用代碼方式實現對圖片的平鋪效果。
以上就是本文的全部內容,希望對大家學習Android軟體編程有所協助。