《每周一记》之Android的View基础

为之于未有,治之于未乱。

提纲

  • View的基础知识

Android View学习笔记(一):View基础知识
Android View学习笔记(二):View滑动方式总结
Android View学习笔记(三):Scroller的原理剖析及使用(上)
Android View学习笔记(四):Scroller的原理剖析及使用(下)

磨刀不误砍柴工,所以我认为在学习自定义View之前,还是很有必要先掌握一些View的基础知识,以便在今后遇到问题时,能够融会贯通,从容的去解决问题。
官网链接

一、View的基础知识

1、 什么View

View是Android中所有控件的基类, 它在屏幕上占据一个矩形区域,负责绘图和事件处理。ViewGroup,字面意思上我们可以理解为控件组,不难理解就是包含多个View,也就是说它是由单个控件或者多个控件组成的控件。

2、 View的位置参数

View的位置主要由它的四个顶点来决定,分别对应于View的四个属性:top、left、right、bottom,其中top是左上角纵坐标,left是左上角横坐标,right是右下角横坐标,bottom是右下角纵坐标,这些坐标都是相对于View的父容器而言的,而并不是相对于手机屏幕而言。
从Android3.0开始,View增加了几个额外的参数:x、y、translationX、translationY,其中x和y是View的左上角坐标,而translationX和translationY是View左上角相对于父容器的偏移量(默认值为0),View为它们提供了get/set方法,几个参数的换算关系如下所示:

  • x = left + translationX;
  • y = top + translationY;

需要注意的是,View在平移的过程中,top和left表示的是原始左上角的位置信息,其值并不会发生变化。

3、常用方法
  • setLeft(int left)
    Sets the left position of this view relative to its parent.

  • setTop(int top)
    Sets the top position of this view relative to its parent.

  • setRight(int right)
    Sets the right position of this view relative to its parent.

  • setBottom(int bottom)
    Sets the bottom position of this view relative to its parent.

  • setX(float x)
    Sets the visual x position of this view, in pixels.

  • setY(float y)
    Sets the visual y position of this view, in pixels.

  • setTranslationX(float translationX)
    Sets the horizontal location of this view relative to its left position.

  • setTranslationY(float translationY)
    Sets the vertical location of this view relative to its top position.

  • setAlpha(float alpha)
    Sets the opacity of the view to a value from 0 to 1, where 0 means the view is completely transparent and 1 means the view is completely opaque.

  • scrollBy(int x, int y)
    Move the scrolled position of your view.

  • scrollTo(int x, int y)
    Set the scrolled position of your view.

注意:在onCreate()方法中是无法获取View坐标信息的,因为此时View还没有开始绘制,所有坐标信息将为0。

你可能感兴趣的:(《每周一记》之Android的View基础)