android程序中怎么图片的实现平铺效果

来源:互联网 发布:奇兔刷机内置软件 编辑:程序博客网 时间:2024/05/01 23:09

文章出处:

http://txlong-onz.iteye.com/blog/1144874#comments

http://blog.csdn.net/simayilong/article/details/6681984


就像window桌面图片一样,如果图片小的话就会平铺。

在drawable文件夹中添加自己的my.xml文件,描述如:

    <?xml version ="1.0" encoding ="utf-8" ?>      <bitmap          xmlns:android="http://schemas.android.com/apk/res/android"          android:src="@drawable/pic_bg"          android:tileMode="repeat" />  

然后再需要用的地方使用:

    android:background="@drawable/mybg"  

代码实现方式:

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);  BitmapDrawable bd = new BitmapDrawable(bitmap);  bd.setTileModeXY(TileMode.REPEAT , TileMode.REPEAT );  bd.setDither(true);  view.setBackgroundDrawable(bd); 

再着可以用*.9.png实现。

可以在上左两边添加要延伸的像素行。

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////

在Android的UI开发中,有时为了界面美观而需要虚线。


    package com.custom;               import android.content.Context;      import android.graphics.Canvas;      import android.graphics.Color;      import android.graphics.DashPathEffect;      import android.graphics.Paint;      import android.graphics.Path;      import android.graphics.PathEffect;      import android.graphics.Rect;      import android.util.AttributeSet;      import android.util.DisplayMetrics;      import android.util.Log;      import android.view.View;      /**      * 画虚线组件      * @author linweidong      * @Date   2010-09-15      */      public class DashedLine extends View {          private final String namespace = "http://com.smartmap.driverbook";          private float startX;          private float startY;          private float endX;          private float endY;          private Rect mRect;                  public DashedLine(Context context, AttributeSet attrs) {              super(context, attrs);                                  }                @Override          protected void onDraw(Canvas canvas) {              // TODO Auto-generated method stub              super.onDraw(canvas);                      Paint paint = new Paint();              paint.setStyle(Paint.Style.STROKE);              paint.setColor(Color.DKGRAY);              Path path = new Path();                   path.moveTo(0, 10);              path.lineTo(480,10);                    PathEffect effects = new DashPathEffect(new float[]{5,5,5,5},1);              paint.setPathEffect(effects);              canvas.drawPath(path, paint);          }  

在layout文件夹下的xml引用这个控件
XML代码

    <com.custom.DashedLine            android:id="@+id/dashedLine"           android:layout_width="wrap_content"                    android:layout_height="20px"                                                    />  



原创粉丝点击