1. android:padding和android:layout_margin

android:layout_margin:指该控件距离边父控件的边距。
android:layout_marginLeft:指该控件的左边缘距离边父控件的边距。

android:padding:指该控件内容距离控件边缘的距离;例如,TextView中的文本距离TextView自身的边距。
android:paddingLeft:指该控件内容的左边缘距离控件的距离;例如,TextView中的文本的左边缘距离TextView自身的边距。

示例

<com.skw.viewtest.MyView    android:layout_width="100dip"    android:layout_height="100dip"    android:padding="10dip"    android:layout_margin="20dip"    />

说明:MyView是一个自定义视图。
(01) android:padding="10dip",意味着它的内容距离MyView视图本身的上下左右边距都是10dip。
(02) android:layout_margin="20dip",意味着MyView距离"它的父容器"的上下左右边距都是20dip。

2. View的相关位置

View的位置涉及到TransformationInfo。TransformationInfo记录的是在View发生"缩放/旋转"等变化时的大小,如果没有发生"缩放/旋转",则TransformationInfo记录的位置信息都是0。

关于水平方向的位置:
getPaddingLeft():指该控件内容的左边缘距离控件自身的距离。
getLeft(): 该View相对于"父view"的x坐标。
getX():TransformationInfo.mTranslationX + getLeft()的值。

同理,
getPaddingLeft():指该控件内容的上边缘距离控件自身的距离。
getTop(): 该View相对于"父view"的y坐标。
getY():TransformationInfo.mTranslationY + getTop()的值。

3. MotionEvent点击事件的相关位置

getX(): 触摸点相对于"监听该点击事件的控件"的x坐标。
getRawX():触摸点相对于屏幕的x坐标。

同理,
getY(): 触摸点相对于"监听该点击事件的控件"的y坐标。

getRawY():触摸点相对于屏幕的y坐标。



//----------------------------------------分割---------------------------------------

TranslateAnimation ta = new TranslateAnimation(0f, 100f, 0, 0);ta.setDuration(10000);ta.setFillAfter(true);imageview.setTranslationX(10);imageview.startAnimation(ta);

View的setTransLationX()方法,设置偏移量,相当于可以看到图片从0直接到10这个位置,动画从10开始执行的。当第二次执行的时候,直接从10这个位置执行动画。


更多相关文章

  1. Android中RelativeLayout各个属性介绍
  2. Android中RelativeLayout各个属性的含义
  3. Android(安卓)开发大坑汇总(持续更新)
  4. Android学习笔记_布局文件属性的说明
  5. 布局初步
  6. 抽离Android原生控件的方法
  7. (4.1.25)android学习之布局
  8. android控件属性
  9. android TextView 容纳不下内容,让字向左滚动的办法

随机推荐

  1. android应用基础--由官方帮助文件翻译
  2. camp
  3. 9.1、Android中得到新打开Activity 关闭
  4. Android修炼之道——GreenDroid 架构工具
  5. Android程序的签名保护及绕过方法
  6. Android(安卓)IPC机制之 Android的各种IP
  7. Vue.js实战——开发Android(安卓)Hybird
  8. 编译 go 源码为 android 动态库(so)
  9. Android(安卓)手机上安装并运行 Ubuntu 1
  10. Android(安卓)自定义控件外观