Study Jams ___1A. Building Layouts -上
1.View
---任何应用能显示的就是View
View合起来组成布局(Layout);
应用给你展示与你交互的所有这些叫做用户界面(User Interface(UI)
2.调节View
---介绍了XML SYNATX。
问:为什么属性前要加android:?
答:xmlns是XML Namespaces的缩写,中文名称是XML命名空间。
使用的规则为,首先定义命名空间xmlns:namespace-prefix="namespaceURI"。Android中xml中的使用是:xmlns:前缀=http://schemas.android.com/apk/res/应用程序包路径;然后使用的时候按格式:namespace-prefix(前缀):属性(这就是为什么属性前需要加android:
如果使用xmlns,则xmlns的定义必须放在最外层开始的的标记中
当命名空间被定义之后,所有带有相同前缀的子元素都会与同一个命名空间相关联。避免XML解析器对xml解析时的发送名字冲突,这就是使用xmlns的必要性。当自定义的View有自己的属性的时候,就用到xmlns来定义一个命名空间。
---MaterialDesign
看文档,一些设计规范(多浏览)
---TextView中有个属性是textAppearance
android:textAppearance = "?android:textAppearanceLarge" 这样的,Small Medium Large 分别对应14sp,18sp,22sp
问:属性的值中有问号又是为什么?
答:类似的也了解下。
@表示引用资源,声明这是一个资源引用—随后的文本是以@[package:]type/name形式提供的资源名。
@android:string表明引用的系统的(android.*)资源
@string表示引用应用内部资源
对于id, 可以用@+id表明创建一个id
?表示引用属性
“?”引用主题属性,当您使用这个标记,你所提供的资源名必须能够在主题属性中找到,因为资源工具认为这个资源属性是被期望得到的,您不需要明确的指出它的类型(?android:attr/android:textDisabledColor)。
使用主题属性 :
另外一种资源值允许你引用当前主题中的属性的值。这个属性值只能在样式资源和XML属性中使用;它允许你通过将它们改变为当前主题提供的标准变化来改变UI元素的外观,而不是提供具体的值。
如例中所示,我们在布局资源中使用这个特性将文本颜色设定为标准颜色的一种,这些标准的颜色都是定义在基本系统主题中:
Java代码
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"android:layout_height="fill_parent"
android:textColor="?android:textDisabledColor"
android:text="@string/hello_world" />
注意,这和资源引用非常类似,除了我们使用一个“?”前缀代替了“@”。当你使用这个标记时,你就提供了属性资源的名称,它将会在主题中被查找 ——因为资源工具知道需要的属性资源,所以你不需要显式声明这个类型(如果声明,其形式就是?android:attr/android:textDisabledColor)。
除了使用这个资源的标识符来查询主题中的值代替原始的资源,在这里关于该类型的name语法:?[namespace:]typpe/name和“@”形式一样,也是可选。
---ImageView中的android:scaleType:(查阅文档得到:
"centerCrop" :Scale the image uniformly (maintain theimage's aspect ratio) so both dimensions (width and height) of the image willbe equal to or larger thanthe corresponding dimension of the view (minus padding). The image is thencentered in the view.
"centerInside":Scale theimage uniformly (maintain the image's aspect ratio) so that both dimensions(width and height) of the image willbe equal to or less thanthe corresponding dimension of theview (minus padding). The image is then centered in the view.
3.摆放View
如何设计地好看(没有设计师)?
建议:1.排版整体要好。(如留一些空隙,布局不要太紧凑
2.多个界面不要统一,3-4个为好
3.可通过一些方法(如图片)对用户适当地引导。
4.Material Design
(1A Done) 2016/4/13