新建3个活动页面,建完会发现是“Java Class”.
具体原因看下图所示
虽然“Java Class"跟“Activity”建后图示一样,但建“Activity”它会自动创建布局文件且会在清单文件中自动注册,而建“Java Class”需要自己手动创建布局文件。
利用Android Studio手动创建活动——笔记(超多图)
sp作为字体大小单位,会随着系统的字体大小改变,而dp作为单位则不会。所以建议在字体大小的数值要使用sp作为单位
红框中第一行代码是布局居中,第二行是文本居中。演示效果如下图所示
要验证活动的生命周期,要重写活动的说明周期毁掉方法。
要验证活动在运行过程中确实毁掉了这些生命周期方法,我们需要在每个方法里面添加日志打印
private static final String TAG=“ServerActivity”;
@Override
public void onCreate(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) {
super.onCreate(savedInstanceState, persistentState);
Log.i(TAG,“onCreate”);
}
@Override
protected void onStart() {
super.onStart();
Log.i(TAG,"onStart");
}
@Override
protected void onResume() {
super.onResume();
Log.i(TAG,"onResume");
}
@Override
protected void onPause() {
super.onPause();
}
@Override
protected void onStop() {
super.onStop();
Log.i(TAG,"onStop");
}
@Override
protected void onRestart() {
super.onRestart();
Log.i(TAG,"onRestart");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.i(TAG,"onDestroy");
}
}
方法重写完成之后,我们要实现页面跳转逻辑以验证活动生命周期毁掉过程
首先我们要通过findid找到控件
Button login=findViewById(R.id.login);
Button dialog_button=findViewById(R.id.dialog_button);
控件找到之后,为控件设置监听器
login.setOnClickListener(new View.OnClickListener() {//当用户点击登录按钮时会触发里面监听器的onClick()方法
@Override
public void onClick(View v) {//那我们就需要在onClick()方法里面实现跳转到ServerActivity页面的代码。
Intent intent=new Intent(MainActivity.this,ServerActivity.class);//要实现跳转到ServerActivity的页面要使用到Intent工具。在Intent里面传入两个参数(当前页面名称.this,目标页面.class)
startActivity(intent);//接着我们使用startActivity来传入一个intent对象,实现从MainActivity页面跳转到ServerActivity页面
}
});
dialog_button监听器也是如此设计
dialog_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,DialogActivity.class);
startActivity(intent);
}
});