Android 第四天

今天学习Android遇到问题点:

1.Android 相关目录中不能出现空格,否则会报以下错误:

project location should not contain whitespace,as this can cause problems with the NDK tools。

2. 使用logi输出时提示:TAG has private access in"android.support.v4.app.FragmentActivity"

解决方法:定义一个常数 TAG 在 MainActivity :

private static final String TAG = "MainActivity"


今天主要学习目录

1.Android UI布局

2.LinerLayout

3.RelativeLayout

附注:练习code


一、Andorid UI布局

UI 布局有一些Android提供的布局,可以使用在几乎所有的Android应用程序提供不同的视图,外观和风格。

S.N.布局和说明

1 Linear Layout

LinearLayout视图组,所有的子视图在单一的方向对齐,垂直或水平。 

2 Relative Layout

RelativeLayout相对位置显示子视图的视图组。 

3 Table Layout

TableLayout一种视图,组视图分为行和列。 

4 Absolute Layout

AbsoluteLayout 使能够指定其子视图的确切位置。 

5 Frame Layout

FrameLayout 屏幕上是一个占位符,可以用它来显示一个单一的视图。 

6 List View

ListView显示滚动项目列表视图组。 

7 Grid View

GridView 网格控件是一种ViewGroup用于显示一个二维,滚动的网格的项目。 

布局属性

每个布局都有一组属性,它定义布局的视觉属性。所有布局中,有几个共同的属性和其他属性布局。以下是常见的属性并可以应用到所有的布局中:

属性描述

android:id唯一地标识该视图的ID

android:layout_width布局的宽度

android:layout_height这是布局的高度

android:layout_marginTop这是关于布局的顶侧的额外的空间

android:layout_marginBottom在布局上的底侧的额外的空间

android:layout_marginLeft在布局上的左侧的额外的空间

android:layout_marginRight在右侧的布局的额外空间

android:layout_gravity它指定子视图被定位

android:layout_weight指定有多少布局额外的空间应该分配给视图

android:layout_x指定布局的x坐标

android:layout_y此指定布局的y坐标

android:layout_width布局的宽度

android:layout_width布局的宽度

android:paddingLeft布局的左填充

android:paddingRight布局的右填充

android:paddingTop布局顶部填充

android:paddingBottom布局底部填充

属性说明:

可以指定宽度和高度精确的测量,但更多的时候,使用这些常量作为宽度或高度设置:

android:layout_width=wrap_content 告诉视图,其内容所需要的尺寸大小本身。

android:layout_width=fill_parent 告诉视图如其父视图一样尺寸大小。

视图标识

一个视图对象有一个唯一的ID分配给它,用于唯一识别视图。ID在XML标签的语法是:

android:id="@+id/my_button"

以下是@+ 符号的简要说明:

在符号(@)开头的字符串表示XML解析器解析和扩展ID字符串的其余部分,将其识别为一个ID的资源。

加号(+)表示,这是一个新的资源名,必须创建并添加到资源中。要创建一个视图对象的实例,并捕捉到它的布局,使用以下命令:

Button myButton = (Button) findViewById(R.id.my_button);


二、LinearLayout

LinearLayout属性

以下是具体 LinearLayout 的重要属性:

属性描述

android:id这是布局的唯一标识ID。

android:baselineAligned这必须是一个布尔值,要么“true”或“false”,并防止布局调整其子的基线。

android:divider这是绘制按钮之间的垂直分隔。使用颜色值,它们的格式如:"#rgb", "#argb", "#rrggbb" 和 "#aarrggbb"。

android:gravity指定对象应该如何定位它的内容,无论是在X轴还是Y轴。可能的值是top, bottom, left, right, center, center_vertical, center_horizontal等。

android:orientation这种安排指定的方向,可以用“horizontal”表示为一排,“vertical”表示一列。默认是水平的。


三、RelativeLayout 

Android 的 RelativeLayout 可以指定子视图如何彼此相对定位。每个视图的位置可以被指定为相对于同级元素或相对于父视图。

RelativeLayout 属性

以下是RelativeLayout 具体的属性:

属性描述

android:id这是布局的唯一标识ID。

android:gravity这指定对象应该如何定位它的内容,无论是X轴和Y轴。可能的值是top, bottom, left, right, center, center_vertical, center_horizontal等。

android:ignoreGravity这表示什么视图应该不受到重力影响。

使用RelativeLayout可以调整两个元素右边界或使一个下面跟着另一个视图,居中于屏幕上,中心,左侧等等。默认情况下,所有子视图都在左上角的布局,所以必须定义使用RelativeLayout.LayoutParams和一些重要属性的布局属性,每个视图的位置如下给出:

属性描述

android:layout_above位置上面给定锚点视图ID此视图的底部边缘,必须引用另一个资源,在形式 "@[+][package:]type:name"

android:layout_alignBottom name的下面 形式 "@[+][package:]type:name".

android:layout_alignLeft 左对齐 使用形式 "@[+][package:]type:name".

android:layout_alignParentBottom如果为true 底部同父视图,要么“true”或“false”。

android:layout_alignParentEnd如果为true,尾部同父视图,要么“true”或“false”。

android:layout_alignParentLeft如果为true,左边同父视图,要么“true”或“false”。

android:layout_alignParentRight如果为true,右边同父视图,要么“true”或“false”。

android:layout_alignParentStart如果为true,使得此视图开始边缘匹配父的开始边缘。必须是一个布尔值,要么“true”或“false”。

android:layout_alignParentTop如果为true,使得此视图的顶部边缘相匹配的父的顶部边缘。必须是一个布尔值,要么“true”或“false”。

android:layout_alignRight使得此视图的右边缘匹配给定的锚点视图ID的右边缘,并且必须是一个引用另一个资源,在形式 "@[+][package:]type:name".

android:layout_alignStart使得此视图开始边缘的匹配给定的锚点视图ID开始边缘,必须引用另一个资源,在表格 "@[+][package:]type:name".

android:layout_alignTop使得此视图的顶部边缘匹配给定的锚点视图ID的顶边缘,并且必须是一个引用到另一个资源,在形式 "@[+][package:]type:name".

android:layout_below定位此视图低于给定锚点视图ID的顶边缘,并且必须是一个引用到另一个资源,在形式 "@[+][package:]type:name".

android:layout_centerHorizontal如果为true,中心这个子视图水平在其父之内。必须是一个布尔值,要么“true”或“false”。

android:layout_centerInParent如果为true,使此子视图中心水平和垂直其父之内。必须是一个布尔值,要么“true”或“false”。

android:layout_centerVertical如果为true,该中心子垂直在其父之内。必须是一个布尔值,要么“true”或“false”。

android:layout_toEndOf此视图给定锚点视图ID结束边缘位置,必须引用另一个资源,在格式 "@[+][package:]type:name".

android:layout_toLeftOf此视图给定锚点视图ID的左边的右边位置,必须做个参考其他资源,在形式 "@[+][package:]type:name".

android:layout_toRightOf定位此视图为给定的锚点视图ID的右左边缘和必须是引用到另一个资源,在形式 "@[+][package:]type:name".

android:layout_toStartOf定位此视图为给定的锚点视图ID的开始的端部边缘,并且必须是一个引用到另一个资源,在形式 "@[+][package:]type:name".



你可能感兴趣的:(Android 第四天)