Android状态机

问题描述 投票:1回答:1

我编写了一个Android应用程序。我的应用程序中有很多活动,活动之间有大量转换。我决定实现一个状态机,它将切换我的活动。

我希望在我的Application类或其子类中实现一个状态机,但是我无法从中启动任何Activity。

public class MainAppClass extends Application {}

这样的代码失败了:

Intent intent = new Intent();
intent.setClass(this.MyActivity, Screen2Activity.class);
StartActivity(intent);

也许,这是不真实的吗?还有其他方法可以执行此类任务吗?感谢您的回答!

class android-intent android-activity android
1个回答
1
投票

这里是另一个问题:为什么要尝试从Application的子类开始活动?

阅读(从文档中阅读),您将明白为什么您尝试执行的操作没有任何意义。

Application类是那些需要维护全局应用程序状态的人的基类。通常不需要子类化Application。在大多数情况下,静态单例可以以更模块化的方式提供相同的功能。如果您的单身人士需要全局上下文(例如,注册广播接收者),则可以为获取该单身人士的函数指定一个Context,该函数在首次构造单身人士时内部使用Context.getApplicationContext()

如果您编辑原始帖子,澄清为什么要这样做,也许我可以为您指出一种更合适的启动Screen2Activity的方法。

© www.soinside.com 2019 - 2024. All rights reserved.