Android 开发 - 关于 startActivity 后立刻 finish、requestWindowFeature 方法注意事项

关于 startActivity 后立刻 finish

  • 注:Activity 的 startActivity 方法没有强制要求必须在主线程调用
java 复制代码
new Intent(this, ActivitionActivity.class); // 启动新 Activity
finish(); // 立即关闭当前 Activity
  • 这样设计的目的有
  1. 单任务栈导航:在 HomeActivity 中执行 finish 方法后,会退出应用,而不是返回 MainActivity

  2. 避免返回栈累积

  • 这种模式常见于
  1. 启动页跳转到主页面

  2. 登录成功后跳转到主页


requestWindowFeature 方法注意事项

  • requestWindowFeature 方法必须在 setContentView 方法之前调用,否则会抛出异常
java 复制代码
public class RequestWindowFeatureTestActivity extends AppCompatActivity {

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

        requestWindowFeature(Window.FEATURE_NO_TITLE);
    }
}
复制代码
# 输出结果

FATAL EXCEPTION: main
Process: com.my.view, PID: 22747
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.my.view/com.my.view.RequestWindowFeatureTestActivity}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
相关推荐
matlab_xiaowang6 分钟前
Redux 入门:JavaScript 可预测状态管理库
开发语言·javascript·其他·ecmascript
虹科网络安全18 分钟前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
2301_7717172139 分钟前
解决mysql报错:1406, Data too long for column
android·数据库·mysql
axng pmje43 分钟前
Java语法进阶
java·开发语言·jvm
rKWP8gKv71 小时前
Java微服务性能监控:Prometheus与Grafana集成方案
java·微服务·prometheus
老前端的功夫1 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
qq_435287921 小时前
第9章 夸父逐日与后羿射日:死循环与进程终止?十个太阳同时值班的并行冲突
java·开发语言·git·死循环·进程终止·并行冲突·夸父逐日
小江的记录本1 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
dvjr cloi1 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
止语Lab1 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang