心得感悟
今天是进入Android开发的第一天,学习的内容有点多,部分内容还是比较简单的。但学的多,晚上总结时发现自己有些内容又不记得了,复习是很有必要的。最后我们还跟着写了一个Demo,目前还有点迷迷糊糊,详细内容在下一篇文章中讲述。
内容简概
- 一、新建一个项目
- 二、项目目录介绍
- 三、Activity(界面)的生命周期
- 四、xml配置界面
- 五、Java代码方式添加控件
- 六、启动配置和手动创建控件
具体内容
一、新建一个项目
【软件】:Android studio
在软件左上角按图中顺序找到New Project
选择Empty Activity
一般情况下,只需要编辑基本内容就好
- 点击Finish,项目就已经新建好了
二、项目目录、控件介绍
下面框起来的内容就是我们会用到的
先来介绍左侧栏里的Project目录
下面是xml文件的Text部分,在这里可以编写项目
下面是xml文件的Design部分,在这里可以通过拖拽设计界面
下面是java文件,同样在可以这里编写项目
在底部的Local可以看到程序的运行细节,在下面会讲到
7.编写项目时,什么时候用xml,什么时候用Java代码呢?
如果添加的控件是静态的
(变化的东西不多时),选择xml
如果需要灵活地操作这个控件
,选择代码创建
三、Activity(界面)的生命周期
- 下面是管理界面会用到的方法,介绍顺序和基本生命周期一致
功能 | 实现方法 |
---|---|
配置界面 | onCreate |
启动界面 | start |
重新启动 | restart |
唤醒界面 | resume |
暂停界面 | pause |
销毁界面 | destroy |
-
界面运行与生命周期的关系如下:
你也可以在自己电脑上试一试,下面是具体代码和效果,在MainActivity编写
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override // 界面启动 展现界面
protected void onStart() {
super.onStart();
System.out.println("onStart");
}
@Override // 重新启动
protected void onRestart() {
super.onRestart();
System.out.println("onRestart");
}
@Override // 恢复界面 后台->前台
protected void onResume() {
super.onResume();
System.out.println("onResume");
}
@Override // 暂停界面 界面切换
protected void onPause() {
super.onPause();
System.out.println("onPause");
}
@Override // 界面销毁
protected void onDestroy() {
super.onDestroy();
System.out.println("onDestroy");
}
}
然后在手机模拟器或者自己的手机上运行。在底部的Local中,搜索框里输入System(只看打印结果),即可看到运行细节。
四、xml配置界面
1. xml介绍
系统默认一个Activity对应一个xml文件,其实xml文件就是一个容器,可以放很多UI控件
命名特点:activity_界面功能.xml
2. 布局:这么多控件该如何布局呢?
- 约束布局 ConstraintLayout
- 线性布局 LinearLayout 垂直/水平
- 相对布局 RelativeLayout
- 帧布局 FrameLayout
- 表格布局 TableLayout/GridLayout
- 绝对布局 AbsoluteLayout
这里采用的就是帧布局
3. 设置控件大小
父视图
:设备显示屏大小
子视图
:插入的图片原始大小
将一个控件添加到一个容器中,控件就是这个容器的子视图,容器是控件的父视图
功能 | 语法 |
---|---|
和父视图一样大 | match_parent |
插入内容的原始尺寸 | wrap_content |
具体尺寸 | _dp(20dp) |
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout 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"
android:id="@+id/fl_main">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/yuantu">
</ImageView>
</FrameLayout>
五、Java代码方式添加控件
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 配置界面
setContentView(R.layout.activity_main);
// 通过代码来布局界面
// 1.找一个容器 xxlayout
FrameLayout container = new FrameLayout(this);
// 3.创建一个子视图
// 创建ImageView显示图片
ImageView bgImageView = new ImageView(this);
// 设置属性
bgImageView.setBackgroundColor(Color.LTGRAY);
// 添加到容器里面
container.addView(bgImageView,200,200);
// 2.设置当前这个界面的内容视图为这个容器
setContentView(container);
}
}
六、启动配置和手动创建控件
功能 | 具体操作 |
---|---|
去除界面标题 | 打开app>res>values>styles.xml 更改代码 |
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
更改应用名称 | 打开app>res>manifests>AndroidManifest.xml 做出以下更改 |
---|
android:label="应用名称"
更换应用图标 | 打开app>res>mipmap>ic_launcher_round 添加图标再打开 app>res>manifests>AndroidManifest.xml 更改代码 |
---|
android:icon="@mipmap/图标名称"
android:roundIcon="@mipmap/图标名称"