Android学习笔记-Drawable、项目布局、Manifest

Android开发

Posted by Kingtous on January 21, 2019

Darwable

  • Drawable资源

    • 主要格式有.png、.jpg.gif等

    • 图片放入/res/drawable-XXX目录下

    • 资源文件在R.java资源类中生成该资源的索引

  • Drawable资源类型

    • StateListDrawable资源(动态切换背景)

    • LayerDrawable资源(图层叠加)

    • ShapeDrawable资源(绘图)

    • ClipDrawable资源(显示图片部分区域)
    • AnimationDrawable资源(动画)

Android项目布局文件

  • 定义用户界面上各个组件之间的组织结构

  • XML格式文件,Android系统负责初始化

  • 实现界面布局和逻辑代码分离
    • 按钮声明和事件逻辑处理不在一个文件中
  • 修改和更新界面非常简便,无需修改代码

  • 布局文件是树形结构,使用根节点

  • 一般在布局控件中放置界面显示组件LinearLayout中(如在之中放入textview文本标签)

  • 通过节点属性设置界面显示界面组件的属性:大小、颜色、边距等

使用样例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent" %表示parent(父类)有多宽,这个就有多宽
    android:layout_height="match_parent"
    tools:context=".MainInterface">

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="16dp"
        android:text="hq牛逼!!!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/yes_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginBottom="8dp"
        android:text="YES!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.507"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.659" />
</android.support.constraint.ConstraintLayout>
  • 布局文件节点属性

    1
    2
    
    android:id="@+id/button_id"
    比如@string...
    

AndroidManifest.xml项目配置文件

  • 位于根目录下,文件名不可修改,且只能出现一次
  • 文件中<manifest>和<application>是必须的,且只能出现一次

  • 元素可以包含其他子元素,处于同一层次的元素,声明没有顺序

  • 含有Android应用使用的组件和系统配置信息
    • 应用使用的组件及其实现类(Activity/Service等)
    • 需要的Android系统权限(通过permission节点)
    • 声明其他应用程序与该应用程序交互需要的权限
    • 该应用程序所需Android API版本
    • 列出该应用程序必须链接的库