您的位置:首页 > 移动开发 > Android开发

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

2011-08-12 15:19 447 查看
很简单,就像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" />

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

Xml代码

android:background="@drawable/mybg"

代码实现方式:

Java代码
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"

/>


http://txlong-onz.iteye.com/blog/1144874#comments
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息