Android View类属性及方法

java.lang.Object

   android.view.View

android.widget包中所有可视控件都是android.view.View的子类


android:layout_gravity

控件的位置

android:gravity

控件中内容的位置

例如,LinearLayout中的Button居中,可在Button中设置android:layout_gravity="center",或者在LinearLayout中设置android:gravity="center"。

关于android:layout_gravity属性说明

当android:orientation="vertical",只有center_horizontal、left、right起作用,center只有水平居中。

android:orientation="horizontal",只有center_vertical、top、bottom起作用,center只有垂直居中。


android:drawingCacheQuality
设置绘图时半透明质量。有以下值可设置:auto(默认,由框架决定)/high(高质量,使用较高的颜色深度,消耗更多的内存/low(低质量,使用较低的颜色深度,但是用更少的内存)。

android:background
设置背景色/背景图片。可以通过以下两种方法设置背景为透明:"@android:color/transparent"和"@null"。注意TextView默认是透明的,不用写此属性,但是Buttom/ImageButton/ImageView 这个属性设置透明。

android:alpha 
视图透明度,值在0-1之间。0为完全透明,1为完全不透明。

android:keepScreenOn
关联方法: setKeepScreenOn(boolean)  
视图在可见的情况下是否保持唤醒状态。

android:rotation 
关联方法: setRotation(float) 
旋转度数

android:rotationX 
关联方法: setRotationX(float) 
水平旋转度数

android:rotationY 
关联方法: setRotationY(float) 
竖直旋转度数

android:scaleX 
关联方法: setScaleX(float) 
水平方向缩放比例

android:scaleY 
关联方法: setScaleY(float) 
竖直方向缩放比例

android:scrollX 
x方向的滚动偏移。即在水平方向滚动了多少距离,在GridView中可看这个效果。

android:scrollY 
y方向的滚动偏移。即在竖直方向滚动了多少距离


自定义View的常用方法:  
onFinishInflate() 当View中所有的子控件均被映射成xml后触发   
onMeasure(int, int) 确定所有子元素的大小  
onLayout(boolean, int, int, int, int) 当View分配所有的子元素的大小和位置时触发  
onSizeChanged(int, int, int, int) 当view的大小发生变化时触发  
onDraw(Canvas) view渲染内容的细节  
onKeyDown(int, KeyEvent) 有按键按下后触发  
onKeyUp(int, KeyEvent) 有按键按下后弹起时触发  
onTrackballEvent(MotionEvent) 轨迹球事件  
onTouchEvent(MotionEvent) 触屏事件  
onFocusChanged(boolean, int, Rect) 当View获取或失去焦点时触发   
onWindowFocusChanged(boolean) 当窗口包含的view获取或失去焦点时触发  
onAttachedToWindow() 当view被附着到一个窗口时触发  
onDetachedFromWindow() 当view离开附着的窗口时触发,Android123提示该方法和  onAttachedToWindow() 是相反的。  
onWindowVisibilityChanged(int) 当窗口中包含的可见的view发生变化时触发  


View类绘图:

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

public class ImageView extends View {
	public static int x = 30;  
    public static int y = 30;  
	public ImageView(Context context) {
		super(context);
	}
	@Override
	protected void onDraw(Canvas canvas) {
		super.onDraw(canvas);
		Paint paint = new Paint();  
        paint.setColor(Color.RED);
        canvas.drawRect(x, y, x+60, y+60, paint);//绘制一个矩形  
	}
}


你可能感兴趣的:(Android)