上一篇文章我们的登录框,有点丑
我们希望 “用户”“密码” 能往里面走一点, 包括 “确定” 能不能推一推
那这个东西就需要用到 Padding 和 Margin
margin,指的是当前控件和父控件的边距
padding,指的是当前控件的内边距,即控件中内容距离控件的边缘的距离
现在的用户很顶 我们想让他往其他方向推一点怎么办呢?
这个写哪里都可以,没有前后一说 android:layout_marginLeft="20dp"
看一下
用户往右面走了一点点
密码也同样的操作 android:layout_marginLeft="20dp"
看一下
程序运行一下
包括输入框,我们也可以做一个 android:layout_marginLeft="20dp"
或者在 android:layout_marginRight="10dp" 第43行 ,用户也是一样 第25行
运行一下
那padding是什么呢?文字和内边框的关系
android:padding="10dp"
运行一下,看不出太大的效果
我们修改一下 android:padding="20dp" 第62行
运行一下,看的不是很明显
我们引入一个图片
把名字叫user 的图片放到 res 下面的drawable
android:src="@drawable/user"
运行一下
给这个图片上个底色,再来一个 android:layout_marginTop="30dp"
第14行 第16行
运行一下,没看到底色,但是图片下移了
我们看一下确定能不能推一下 “确定”
android:padding="10dp" 改成 android:paddingRight="100dp"
运行结果
改一下
android:paddingRight="100dp" 改成 android:layout_marginRight="100dp"
运行一下
然后我们可以加上取消,
运行一下
取消没了,取消超出边界去了
如何找到它超出去了呢?
去掉 android:layout_alignParentRight="true" 第76行
运行一下
那让他在水平方向上居个中
android:layout_marginRight="100dp" 改成 android:layout_centerHorizontal="true"
然后再去掉 android:layout_alignParentRight="true" 第86行
运行一下
不咋好看
如果我们非要把这两个按键右移如何办呢?
其实可以先把取消写出来
先让 “取消” 跟父控件的右面对齐, android:layout_alignParentRight="true" 第82行
然后留一点空间 android:layout_marginRight="20dp" 第83行
运行一下
然后 “确定” 在 “取消” 的左面就ok啦
去掉 android:layout_centerHorizontal="true"
加上 android:layout_toLeftOf="@id/btn2"
运行一下
如果确定想要离取消远一点点
android:layout_marginRight="30dp"
运行一下
那我如果想要qq的头像跑在 “用户” 的左面呢?
现在的代码
企鹅的头像在 布局的外面,我要把它挪到里面来
直接挪进来就行
然后我给他加个id
然后我希望 TextView 在image1 的右面
运行一下,有了,但是他比较大
然后把 android:layout_width="wrap_content"
android:layout_height="wrap_content"
改成
android:layout_width="30dp"
android:layout_height="30dp"
运行一下
然后我们自己改一改,现在的代码
运行结果