一、Activity是什么
Activity是四大组件之一,是Android应用的关键组件,"一个Activity"可以暂且理解是"一个屏幕",它是可以包含用户界面的一种组件用于和用户交互,它区别于windows的 “窗口” 的概念。
Activity 可以由APP自己启动,也可以别的 APP启动,当然启动非本APP的Activity会有一些限制,比如权限等)。APP中有一个Activity会被指定为 主Activity。
二、Activity的生命周期
[ 官网说明 ]
具体还是看官网文档,比较详细。
三、在Activity之间"游荡"
像之前一样,先创建个空项目,方便测试。
1.手动创建Activity
1.1 创建一个新Activity,MyNewActivity.java
创建一个继承于 AppCompatActivity 的类 MyNewActivity 。
package org.wdf.myactivity;
import androidx.appcompat.app.AppCompatActivity;
public class MyNewActivity extends AppCompatActivity {
}
1.2 创建一个新布局文件,activity_mynew.xml
接下来创建一个布局文件,命名规则参阅MainActivity.class。首先选中res中的layout,然后右键菜单 new -> Layout Resource File。File Name 注意要小写。


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</LinearLayout>
1.3 编辑布局文件,添加几个控件
直接编译xml文件添加控件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/Edit_UserName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="UserName"
android:inputType="textPersonName" />
<EditText
android:id="@+id/Edit_PassWord"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="PassWord"
android:inputType="textPassword" />
<Button
android:id="@+id/Btn_Login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Login" />
</LinearLayout>
1.4 MyNewActivity.java代码
package org.wdf.myactivity;
import android.os.Bundle;
import android.util.Log;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
//新版本一般都继承于AppCompatActivity
//当然也可以继承于Activity
//可以go过去看下AppCompatActivity的继承
public class MyNewActivity extends AppCompatActivity {
public static final String TAG = "Debug:MyNewActivity";
public static final boolean D = true;//控制调试输出的变量
/*Activity创建时调用*/
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
if(D) Log.d(TAG,"onCreate");
super


1407

被折叠的 条评论
为什么被折叠?



