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
相关推荐
ANYOUZHEN1 天前
bugku shell
android
virus59451 天前
悟空CRM mybatis-3.5.3-mapper.dtd错误解决方案
java·开发语言·mybatis
初次见面我叫泰隆1 天前
Qt——3、常用控件
开发语言·qt·客户端
没差c1 天前
springboot集成flyway
java·spring boot·后端
无小道1 天前
Qt——QWidget
开发语言·qt
时艰.1 天前
Java 并发编程之 CAS 与 Atomic 原子操作类
java·开发语言
梵刹古音1 天前
【C语言】 函数基础与定义
c语言·开发语言·算法
编程彩机1 天前
互联网大厂Java面试:从Java SE到大数据场景的技术深度解析
java·大数据·spring boot·面试·spark·java se·互联网大厂
笨蛋不要掉眼泪1 天前
Spring Boot集成LangChain4j:与大模型对话的极速入门
java·人工智能·后端·spring·langchain
梵刹古音1 天前
【C语言】 结构化编程与选择结构
c语言·开发语言·嵌入式