其他分享
首页 > 其他分享> > 1.安卓学习之Android项目结构

1.安卓学习之Android项目结构

作者:互联网

目录

1.Android项目结构

1.manifests节点

2.java节点

2.res节点

①drawable子目录

②layout子目录

③mipmap子目录

④values子目录


1.Android项目结构

1.manifests节点

manifests节点用于显示Android应用程序的配置文件。

通常情况下,每个Android应用程序必须包含一个AndroidManifest.xml文件,位于manifests节点下。它是整个Android应用的全局描述文件。在该文件内,需要注明应用的名称、使用图标、Activity和Service等信息,否则程序不能正常启动。

AndroidManifest.xml文件中的重要元素及说明如表1.1所示

元素说明
manifests根节点,描述了package中所有的内容
xmlns:android包含命名空间的声明,其属性为http://schemas.android.com/apk/res/android,表示Android中的各种标准属性能在该xml文件中使用,它提供了大部分元素中的数据
package声明应用程序包
application包含package中application级别组件声明的根节点,一个manifests中可以包含零个或者一个该元素
android:icon应用程序图标
android:label应用程序标签,即为应用程序指定名称
android:theme应用程序采用的主题,例如,Android Studio创建的项目默认采用@style/AppTheme
activity与用户交互的主要工具,它是用户打开一个应用程序的初始页面
intent-filter配置Intent过滤器
action组件支持的Intent Action
category组件支持的Intent Category,这里通常用来指定应用程序默认启动的Activity

注意:在Android程序中,每一个Activity都需要在AndroidManifest.xml文件中有一个对应的<activity>标记

2.java节点

java节点用于显示包含了Android程序的所有包及源文件(.java)

按包存放的Java源文件

                                 单元测试节点

默认生成的MainActivity.java文件的关键代码如下:

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

Android Studio创建的MainActivity类默认继承AppCompatActivity类(继承AppCompatActivity类的Activity将带有Action Bar),并且在该类中,重写了Activity类中的onCreate()方法,在onCreate()方法中通过setContentView(R.layout.activity_main)方法设置当前的Activity要显示的布局文件。

注:这里使用R.layout.activity_main来获取layout目录中activity_main.xml布局文件,这是因为在Android程序中,每个资源都会在R.java文件中生成一个索引,而通过这个索引,开发人员可以很方便地调用Android程序中的资源文件

2.res节点

该节点用来显示保存在res目录下的资源文件,当res目录中的文件发生变化时,R文件会自动修改。在res目录中还包括一些子目录。

①drawable子目录

用来保存图片资源(如PNG、JPEG、GIF图片,9-Patch图片或者Shape资源文件等)

②layout子目录

存储Android程序中的布局文件,在创建Android程序时会默认生成一个activity_main.xml布局文件。如

 

activity_main.xml布局文件的代码如下:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.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"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

activity_main.xml布局文件中的重要元素及说明如表:

元素说明
ConstraintLayout布局管理器
xmlns:android包含空间的声明,其属性值为http://schemas.android.com/apk/res/android,表示Android中的各种标准属性能在xml文件中使用,它提供了大部分元素中的数据,该属性一定不能省略
xmlns:tools指定布局的默认工具
android:layout_width指定当前视图在屏幕上所占的宽度
android:layout_height指定当前视图在屏幕上所占的高度
TextView文本框组件,用来显示文件
android:text文本框组件显示的文本

③mipmap子目录

保存项目中应用的启动图标。

mipmap-xxxhdpi(超超超高)、mipmap-xxhdpi(超超高)、mipmap-xhdpi(超高)、mipmap-hdpi(高)、mipmap-mdpi(中)5个目录,分别用来存放超超超高分辨率图片、超超高分辨率图片、超高分辨率图片、高分辨率图片和中分辨率图片。

 

注:ic_launcher:方形图标

ic_launcher_round:圆形图标

④values子目录

保存应用中使用的字符串、样式和颜色资源。如

 

注:colors.xml颜色资源文件

string.xml字符串资源文件

styles.xml样式资源文件(Android好像不会自动生成)

string.xml文件的代码如下:

<resources>
    <string name="app_name">My Application</string>
</resources>

标签:xml,文件,安卓,子目录,节点,学习,Android,android
来源: https://blog.csdn.net/ttycr/article/details/123306798