Android Design Library 开源项目教程
项目的目录结构及介绍
android-design-library/
├── app/
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src/
│ ├── androidTest/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── google/
│ │ │ └── codelabs/
│ │ │ └── designlibrary/
│ │ ├── res/
│ │ └── AndroidManifest.xml
│ └── test/
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── README.md
app/
:包含应用程序的主要代码和资源。build.gradle
:应用程序的构建脚本。proguard-rules.pro
:ProGuard 规则文件。src/
:源代码目录。androidTest/
:Android 测试代码。main/
:主要代码和资源。java/
:Java 源代码。res/
:资源文件,如布局、字符串、图片等。AndroidManifest.xml
:应用程序的清单文件。
test/
:单元测试代码。
build.gradle
:项目的根构建脚本。gradle.properties
:Gradle 配置属性。gradlew
和gradlew.bat
:Gradle 包装脚本。settings.gradle
:项目设置文件。README.md
:项目说明文档。
项目的启动文件介绍
项目的启动文件是 app/src/main/java/com/google/codelabs/designlibrary/MainActivity.java
。这是应用程序的主活动,负责初始化用户界面并处理用户交互。
package com.google.codelabs.designlibrary;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
项目的配置文件介绍
app/build.gradle
这是应用程序的主要构建脚本,包含依赖项、插件和其他构建配置。
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.google.codelabs.designlibrary"
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support