day3

登录界面的布局文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:background="@drawable/bg">




    <LinearLayout
        android:id="@+id/line_1"
        android:layout_width="wrap_content"
        android:layout_height="60dp"
        android:layout_marginTop="20dp"
        android:gravity="center"
        >
        <ImageView
            android:id="@+id/im_1"
            android:layout_width="70dp"
            android:layout_height="70dp"
            android:background="@drawable/icon_bgkuai"
            >
        </ImageView>
        <TextView
            android:layout_width="230dp"
            android:layout_height="70dp"
            android:id="@+id/tv_1"
            android:gravity="center"
            android:text="@string/name"
            android:textColor="#088A08"
            android:textSize="30sp"
            android:textStyle="bold"
            android:layout_margin="20dp"/>

        <ImageView
            android:id="@+id/im_2"
            android:layout_width="70dp"
            android:layout_height="70dp"
            android:background="@drawable/icon_bgkuai"
            >
        </ImageView>

    </LinearLayout>
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="600dp"
        android:layout_marginTop="130dp"
        >
        <EditText
            android:id="@+id/edit_1"
            android:layout_marginTop="60dp"
            android:layout_marginLeft="50dp"
            android:layout_height="60dp"
            android:layout_width="300dp"
            android:textSize="20dp"
            android:textStyle="bold"
            android:textColor="#848484"
            android:inputType="text"
            android:paddingLeft="5dp"
            android:background="@drawable/edit"
            android:drawableLeft="@drawable/icon_uesr"
            android:drawablePadding="3dp"
            android:hint="账号"
            />
        <EditText
            android:id="@+id/edit_2"
            android:layout_height="60dp"
            android:layout_width="300dp"
            android:layout_marginLeft="50dp"
            android:textSize="20dp"
            android:textStyle="bold"
            android:layout_below="@+id/edit_1"
            android:textColor="#848484"
            android:inputType="textPassword"
            android:layout_marginTop="30dp"
            android:paddingLeft="5dp"
            android:background="@drawable/edit"
            android:drawableLeft="@drawable/icon_pw"
            android:drawablePadding="3dp"
            android:hint="密码"
            />
        <RadioGroup android:id="@+id/radio_1"
            android:layout_marginTop="20dp"
            android:layout_below="@id/edit_2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            <RadioButton
                android:id="@+id/rb_1"
                android:layout_width="80dp"
                android:layout_height="40dp"
                android:text="顾客"
                android:gravity="center"
                android:button="@null"
                android:checked="true"
                android:background="@drawable/radio"
                android:layout_marginLeft="50dp"
                android:textSize="25dp"
                android:textStyle="bold"
                android:textColor="#585858"
                />
            <RadioButton
                android:id="@+id/rb_2"
                android:layout_width="80dp"
                android:layout_height="40dp"
                android:text="快递"
                android:gravity="center"
                android:button="@null"
                android:checked="true"
                android:background="@drawable/radio"
                android:layout_marginLeft="30dp"
                android:textSize="25dp"
                android:textColor="#585858"
                />
            <RadioButton
                android:id="@+id/rb_3"
                android:layout_width="80dp"
                android:layout_height="40dp"
                android:text="商家"
                android:gravity="center"
                android:button="@null"
                android:checked="true"
                android:background="@drawable/radio"
                android:layout_marginLeft="30dp"
                android:textSize="25dp"
                android:textColor="#585858"
                />
        </RadioGroup>
        <Button

            android:id="@+id/btn_1"
            android:layout_width="200dp"
            android:layout_height="50dp"
            android:layout_below="@+id/radio_1"
            android:layout_marginLeft="100dp"
            android:layout_marginTop="30dp"
            android:background="@drawable/bg_btn"
            android:drawableLeft="@drawable/icon_login2"
            android:text="登录"
            android:textSize="20dp"
            />

        <Button
            android:id="@+id/btn_2"
            android:layout_height="50dp"
            android:layout_marginTop="20dp"
            android:layout_marginLeft="100dp"
            android:layout_width="200dp"
            android:layout_below="@+id/btn_1"
            android:text="注册"
            android:textSize="20dp"
            android:drawableLeft="@drawable/icon_zhuce"
            android:background="@drawable/bg_btn"
            />
    </RelativeLayout>
</RelativeLayout>

效果展示

因为对布局的各个属性的不熟悉,导致我做出一个好看的布局用了好多时间,一些可以直接设置的属性因为不了解 只能用笨方法一点一点调dp来实现

这里是我后面找到的一些基本属性 借鉴https://blog.csdn.net/loongggdroid/article/details/7611300?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159859298219724825701015%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=159859298219724825701015&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v3~pc_rank_v2-1-7611300.first_rank_ecpm_v3_pc_rank_v2&utm_term=android+%E5%B8%83%E5%B1%80%E7%9A%84%E4%B8%80%E4%BA%9B%E5%B1%9E%E6%80%A7&spm=1018.2118.3001.4187

RelativeLayout
第一类:属性值为true可false
android:layout_centerHrizontal        水平居中
android:layout_centerVertical         垂直居中
android:layout_centerInparent         相对于父元素完全居中
android:layout_alignParentBottom     贴紧父元素的下边缘
android:layout_alignParentLeft        贴紧父元素的左边缘
android:layout_alignParentRight       贴紧父元素的右边缘
android:layout_alignParentTop        贴紧父元素的上边缘
android:layout_alignWithParentlfMissing
如果找不到对应的兄弟元素找不到,就以父元素做参照物。
第二类:属性值必须为id的引用名
android:layout_below          在某元素的下方
android:layout_above          在某元素的上方
android:layout_toLeftOf        在某元素的左边
Android:layout_toRightOf      在某元素的右边
android:layout_alignTop       本元素的上边缘和某元素的上边缘对齐
android:layout_alignLeft       本元素的左边缘和某元素的左边缘对齐
android:layout_alignBottom    本元素的下边缘和某元素下边缘对齐
android:layout_alignRight      本元素的右边缘和某元素右边缘对齐
第三类:属性值为具体的像素值班,如30dip
android:layout_marginBottom    离某元素底边缘的距离
Android:layout_marginLeft      离某元素左边缘的的距离
Android:layout_marginRight    离某元素的右边缘的距离
Android:layout_marginTop     离某元素上边缘的距离
android:hint          设置EditText为空时输入的提示信息
android:gravity        对该view内容的限定:靠上 下 左 右
android:layout_gravity="right" 用来设置该Container(组件)的靠左 靠右
android:text   指定的控件当中显示的文字  尽量使用string.xml文件当中的字符串
Android:textSize   文字大小
Android:width     控件宽度
Android:height     控件高度
Android:layout_width 指定Container组件的宽度
Android:layout_height 指定Container组件的高度
View                按比例划分空间
Android:Padding*              内边距
Android:singleLine  为真时,内容在同一行中进行显示
Android:scaleType:  控制图片如何resized/moved来匹配ImageView的size
ImageView.ScaleType/android.scaleType值的意义区别:
CENTER/center按图片的原来size居中显示,当图片长宽超过View的长宽时,截取图片的居中部分显示
CENTER_CROP/centerCrop 按比例扩大图片的size居中显示,使得图片的长宽等于View的长宽
CENTER_INSIDE/centerinside将图片的内容完整居中显示,通过缩小比例或原的size
使得图片长 宽等于或小于View的长宽
FIT_CENTER/fitCenter  把图片按比例扩大/缩小到VIEW的宽度,居中显示
FIT_END/fitEnd       把图片按比例扩大/缩小到VIEW的宽度,居中在VIEW的下部位置
FIT_START/fitStart    把图片按比例扩大/缩小到VIEW的宽度,居中在VIEW的上部位置
FIT_XY/fitXY        把图片不按比例  扩大/缩小到VIEW的大小显示
MATRIX/matrix       用矩阵来绘制、动态缩小放大图片来显示。
Android:interpolator  控件动画进度(alpha scale translate rotate)
Android提供了几个Interpolator子类,实现了不同的速度曲线,如下
accelerateDcelerateInterpolator    在动画开始与介绍的地方的速率比较慢,然后开始加速
CycleInterpolator   动画循环放特定的次数,速率改变沿着正弦曲线
DecelerateInterpolator  在动画开始的地方的速率改变比较慢,然后开始减速
LinearInterpolator    在动画的以均匀的速率改变
android:screenOrientation="portrait" 指定屏幕为竖屏
android:screenOrientation="landscape" 指定屏幕为横屏
Android:capitalize   设置英文字母大写类型
Android:cursorVisible  设置光标是否显示
Android:digits   设置允许输入哪些字符。如"123456&*"
Android:drawableBottom:在text的下方输出一个drawable。如果是颜色 设置为背景颜色
Android:drawableLeft:在text的左边输出一个drawable。
Android:drawableRight:在text的右边输出一个drawable。
Android:drawableTop:在text的顶部输出一个drawable。
Android:editable  设置是否可编辑
Android:editorExtras设置文本的额外的输入数据。
Android:ellipsize 设置当文字过长时,该控件如何显示,有如下属性
start省略号显示在开头  end省略号在结尾 
middle省略号在中间     marquee以跑马灯的方式显示(动画横向移动)
Android:ems 设置TextView的宽度为N个字符的宽度
Android:freezesText设置保存文本的内容以及光标内置
Android:includeFontPadding 设置文本是否包含顶部和底部额外空白,默认是true
Android:inputMethod 为文本指定输入法,需要完全限定名(完整的包名)
Android:inputType设置广西的类型,用于帮助输入法显示合适的键盘类型
Android:lines 设置文本显示的行数
Android:lineSpacingExtra 设置行间距
Android:lineSpacingMultiplier 设置行间距的倍数。如1.3
Android:linksClickAble 设置链接是否点击连接,即使设置了autoLick
Android:marqueeRepeatLimit  在ellipsize指定的情况下,设置重复滚动次数。
当设置marquee_forever为时表示无限次
Android:maxEms 设置TextView的宽度为最长为N个字符的宽度。与ems同时使用时覆盖ems选项
android:maxHeight设置文本区域的最大高度
android:maxLength限制显示的文本长度,超出部分不显示。
android:maxLines设置文本的最大显示行数,与width或者layout_width结合使用,超出部分自动换行,超出行数将不显示。
android:maxWidth设置文本区域的最大宽度
android:minEms设置TextView的宽度为最短为N个字符的宽度。与ems同时使用时覆盖ems选项。
android:minHeight设置文本区域的最小高度
android:minLines设置文本的最小行数,与lines类似。
android:minWidth设置文本区域的最小宽度
android:numeric如果被设置,该TextView有一个数字输入法。
android:password以小点”.”显示文本
android:phoneNumber设置为电话号码的输入方式
android:privateImeOptions设置输入法选项
android:scrollHorizontally设置文本超出TextView的宽度的情况下,是否出现横拉条
android:selectAllOnFocus如果文本是可选择的,让他获取焦点而不是将光标移动为文本的开始位置或者末尾位置。TextView中设置后无效果。
android:shadowColor指定文本阴影的颜色,需要与shadowRadius一起使用
android:shadowDx设置阴影横向坐标开始位置。
android:shadowDy设置阴影纵向坐标开始位置。
android:shadowRadius设置阴影的半径。设置为0.1就变成字体的颜色了,一般设置为3.0的效果比较好。
android:singleLine设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。如android:text="test_ singleLine "
adnroid:stretchColumns 在TableLayout里指定第几列作为拉伸(当填不满屏幕的时候)
android:text设置显示文本.
android:textSize设置文字大小,推荐度量单位”sp” 或者"pt"
android:textStyle设置字形[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开
android:typeface设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3
android:width设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与layout_width的区别看这里。
posted @ 2020-08-03 23:59  晨起  阅读(123)  评论(0编辑  收藏  举报