一、像素

       Android支持的像素单位常见的主要有三种:

      (1)px 它是手机屏幕上可显示的最小单位,与物理设备的显示屏有关。

      (2)dp/dip 它与物理设备无关,只与屏幕的尺寸有关。

      (3)sp 它的原理跟dp差不多,专门用于设置字体大小。系统设置菜单里面,设置普通字体时,同数值dp和sp的文字看起来一         样大;如果设置为大字体,用dp设置的文字没有变化,用sp设置的文字就变大了。

二、颜色

        1. 在Android中,颜色值由透明度alpha和RGB(红、绿、蓝)三原色定义,有八位十六进制数与六位十六进制数两种编码。

        2.在Android中使用颜色有3种方式:

           (1) 使用系统已定义的颜色常量。 Android系统有12种已经定义好的颜色,具体的类型定义在Color类中。

           (2) 使用十六进制的颜色编码。 在布局文件中设置颜色需要在色值前面加“#”,如android:textColor=“#000000”。在代码中设             置颜色可以直接填八位的十六进制数值(如setTextColor(0xff00ff00);)。

           (3) 在res/values/colors.xml中定义颜色常量。 在布局中使用颜色常量,可引用“@color/常量名” ;在代码中使用颜色常量,               可这样获取:getResources().getColor(R.color.常量名)。

三、屏幕分辨率

     1. 手机的屏幕分辨率信息包括:屏幕的宽度、屏幕的高度、屏幕的像素密度。

      2.在代码中获取分辨率要依靠DisplayMetrics工具,下面是该类的常用属性说明:

         widthPixels:以px为单位计量的宽度值。

         heightPixels:以px为单位计量的高度值。

         density:像素密度,即一个dp单位包含多少个px单位。

例:

       获取当前屏幕的宽度、高度、像素密度的代码。  

android Slider 设置最大最小值 安卓默认最小宽度_线性布局

四、简单布局

        1.视图View的基本属性:

              View是Android的基本视图,所有控件和布局都是由View类派生而来,故而View类的基本属性和方法是各控件和布局通              用的。

              视图在XML布局文件中常用的属性定义:       

 

id:指定该视图的编号。

layout_width:指定该视图的宽度。

layout_height:指定该视图的高度。

layout_margin:指定该视图与周围视图之间的空白距离。

background:指定该视图的背景。背景可以是颜色,也可以是图片。

layout_gravity:指定该视图与上级视图的对齐方式。

padding:指定该视图边缘与内部视图之间的空白距离。

visibility:指定该视图的可视类型。                                                                                                                                                2.视图View的基本方法

视图在代码中常用的设置方法说明:

setBackgroundColor:设置该视图的背景颜色。

setBackgroundDrawable:设置该视图的背景图片。

setBackgroundResource:设置该视图的背景资源id。

setPadding:设置该视图边缘与内部内容之间的空白距离。

setVisibility:设置该视图的可视类型。

        3. margin和padding的区别

           margin和padding看字面意思都是空白距离,那么它们到底有什么区别呢?

          (1)margin是指当前视图与周围视图的距离。

          (2)padding是指当前视图与内部视图的距离。

例:

      margin和padding之间区别

android Slider 设置最大最小值 安卓默认最小宽度_android_02

 

 

android Slider 设置最大最小值 安卓默认最小宽度_XML_03

五、线性布局LinearLayout

      1.视图组ViewGroup是一类特殊视图,所有的布局类视图都是从它派生而来的。

      2.Android中的视图分为两类,一类是布局,另一类是控件。

布局与控件的区别:

       (1)布局本质上是个容器,里面还可以放其他视图(包括子布局和子控件);

       (2)控件是一个单一的实体,已经是最后一级,下面不能再挂其他视图。

线性布局LinearLayout的常见属性:

          LinearLayout是最常用的布局,名字叫线性布局。 

          线性布局的内部视图的排列是有顺序的,要么从上到下依次垂直排列,要么从左到右依次水平排列。

      线性布局的常见属性:

           orientation:指定线性布局的方向。

           gravity:指定布局内部视图与本线性布局的对齐方式。

           layout_weight:指定当前视图的宽或高占上级线性布局的权重。

layout_gravity和gravity之间的区别:

android Slider 设置最大最小值 安卓默认最小宽度_线性布局_04

六、滚动视图ScrollView

        1.与线性布局类似,滚动视图也分为垂直方向和水平方向两类,其中垂直滚动的视图名是ScrollView,水平滚动的视图名是           HorizontalScrollView。

         2.注意事项(重要):滚动视图节点下面必须且只能挂着一个子布局节点,否则会在运行时报错。

七、简单控件

1.文本视图TextView

android Slider 设置最大最小值 安卓默认最小宽度_android_05

1).跑马灯用到的属性

   当一行文本的内容太多,导致无法全部显示,也不想分行展示时,只能让文字从左向右滚动显示,类似于跑马灯。跑马灯效果     在XML布局文件中实现时需要额外指定部分属性。

android Slider 设置最大最小值 安卓默认最小宽度_线性布局_06

2).聊天室效果

     聊天室窗口的高度是固定的,新的文字消息总是加入窗口末尾,同时窗口内部的文本整体向上滚动,窗口的大小、位置保持        不变。在XML布局文件中实现聊天室时需要额外指定部分属性。

android Slider 设置最大最小值 安卓默认最小宽度_线性布局_07

android Slider 设置最大最小值 安卓默认最小宽度_android_08

2.按钮Button

   Button派生自TextView,二者在UI上的区别主要是Button控件有个按钮外观,提示用户点击这里。

1).点击和长按事件的关系

android Slider 设置最大最小值 安卓默认最小宽度_控件_09

3.图像视图ImageView

    ImageView是图像显示控件,与图形显示有关的属性说明如下。

    scaleType:指定图形的拉伸类型,默认是fitCenter。

    src:指定图形来源,src图形按照scaleType拉伸。

android Slider 设置最大最小值 安卓默认最小宽度_android_10

android Slider 设置最大最小值 安卓默认最小宽度_控件_11

4.图像按钮ImageButton

   ImageButton其实派生自ImageView,而不是派生自Button,图像视图拥有的属性和方法,图像按钮统统拥有,只是            ImageButton有个默认的按钮外观。

ImageButton和Button都起到控制按钮的作用,不同的是Button是文本按钮,ImageButton是图像按钮,

这两个按钮的主要区别在于:

(1)Button既可显示文本也可显示图形(通过设置背景图),而ImageButton只能显示图形不能显示文本。

(2)ImageButton上的图像可按比例拉伸,而Button上的大图会拉伸变形(因为背景图无法按比例拉伸)。

(3)Button只能在背景显示一张图形,而ImageButton可分别在前景和背景显示两张图形,实现图片叠加的效果。

在按钮中同时显示图标和文字的办法:

使用TextView能在文字周围放置图片,那么Button同样也能实现。 具体可在XML布局文件中设置以下5个属性。

drawableTop:指定文本上方的图形。

rawableBottom:指定文本下方的图形。

drawableLeft:指定文本左边的图形。

drawableRight:指定文本右边的图形。

drawablePadding:指定图形与文本的间距。 若在代码中实现,则可调用如下方法。

setCompoundDrawables:设置文本周围的图形。可分别设置左边、上边、右边、下边的图形。   

 setCompoundDrawablePadding:设置图形与文本的间距。

android Slider 设置最大最小值 安卓默认最小宽度_线性布局_12

5.图形Drawable

drawable文件放在res目录的各个drawable目录下。

\res\drawable一般存放的是描述性的XML文件,图片文件一般放在具体分辨率的drawable目录下。

drawable-ldpi存放低分辨率的图片(如240×320),现在基本没有这样的智能手机了。

drawable-mdpi存放中等分辨率的图片(如320×480),这样的智能手机已经很少了。

drawable-hdpi存放高分辨率的图片(如480×800),一般对应4寸~4.5寸的手机(但不绝对,同尺寸的手机有可能分辨率不同,手机分辨率就高不就低,因为分辨率低了屏幕会有模糊的感觉)。

drawable-xhdpi存放加高分辨率的图片(如720×1280),一般对应5寸~5.5寸的手机。

drawable-xxhdpi存放超高分辨率的图片(如1080×1920),一般对应6寸~6.5寸的手机。

drawable-xxxhdpi存放超超高分辨率的图片(如1440×2560),一般对应7寸以上的平板电脑。

如何使用图形文件:

             在XML布局文件中引用drawable文件可使用“@drawable/***”这种形式,

             如background属性、ImageView和ImageButton的src属性、TextView和Button的drawableTop系列属性都可以引用drawable文件。 在代码中引用drawable文件可分为两种情况:

         (1)使用setBackgroundResource和setImageResource方法,可直接在参数中指定drawable文件的资源ID,例          如“R.drawable.***”。

         (2)使用setBackgroundDrawable、setImageDrawable和setCompoundDrawables等方法,参数是Drawable对象,这时得先从资源文件中生成Drawable对象,例:

         // 从资源库里的图片文件apple.png获取图形对象  

      Drawable drawable = getResources().getDrawable(R.drawable.apple);

状态列表图形:

          一般drawable是静态图形,如Button按钮的背景在正常情况下是凸起的,在按下时是凹陷的,从按下到弹起的过程,用户便能知道点击了这个按钮。

          在项目中创建状态图形的XML文件,则需右击drawable目录,然后在右键菜单中依次选择New→Drawable resource file,即可自动生成一个空的XML文件。

         下面是一个状态列表图形的drawable文件:

         <selector xmlns:android="http://schemas.android.com/apk/res/android">

        <item android:state_pressed="true" android:drawable="@drawable/button_pressed" />

        <item android:drawable="@drawable/button_normal" /> </selector>

 

android Slider 设置最大最小值 安卓默认最小宽度_控件_13

6.形状图形

                 shape图形用来描述形状定义,形状图形的定义文件以shape元素为根节点, shape节点用来描述该形状图形是哪种几何图形。

                 根节点shape下定义了6个子节点:

                        corners(圆角):它用来描述4个圆角的规格定义。

                        gradient(渐变):它用来描述形状内部的颜色渐变定义。

                         padding(间隔):它用来描述形状图形与周围视图的间隔大小。

                          size(尺寸):它用来描述形状图形的尺寸大小(宽度和高度)。

                          solid(填充):它用来描述形状图形内部的填充色彩。

                          stroke(描边):它用来描述形状图形四周边线的规格定义。

                   下面是一个shape图形的XML描述文件代码:

android Slider 设置最大最小值 安卓默认最小宽度_线性布局_14

android Slider 设置最大最小值 安卓默认最小宽度_控件_15

7.九宫格图片

当图片被拉大时,画面容易模糊,如果把图片作为背景图,模糊的情况会更严重。

例如下面第一个按钮的图片被拉得很宽,此时左右两边的边缘线既变宽又变模糊了。

android Slider 设置最大最小值 安卓默认最小宽度_线性布局_16

九宫格图片的制作步骤:

为了解决这个问题,Android专门设计了点九图片。点九图片的扩展名是png,文件名后常带有“.9”字样。

因为把一张图片划分成了3×3的九宫格区域,所以得名点九图片,也叫九宫格图片。

找到待加工的原始图片button_pressed_orig.png,右击它弹出右键菜单,并选择下面的“Create 9-Patch files”,单击“OK”按钮。

接着drawable目录就会出现一个名为“button_pressed_orig.9.png”的图片文件,双击该文件,右侧弹出点九图片的加工窗口

android Slider 设置最大最小值 安卓默认最小宽度_控件_17

 

android Slider 设置最大最小值 安卓默认最小宽度_android_18