就我而言,我有两个班MenuActivity, MinhaEscolaActivity
。
MenuActivity中有一个名为quemSouEu
的方法,它是一种非静态方法。
它还需要在MinhaEscolaActivity的构造函数方法上定义的一些属性。
如果我在MinhaEscolaActivity
上设置MenuActivity
的新对象,则这些属性将为空,我将获得NullPointerException
。
有没有办法使用quemSouEu
类的方法MenuActivity
?
答案 0 :(得分:1)
您可以使用意图在活动之间传递值。您永远不应该创建活动类的实例。在下面的帖子中看看Raghav Sood的答案
Can i Create the object of a activity in other class?
您的存储选项
http://developer.android.com/guide/topics/data/data-storage.html
存储数据并在需要时检索。在选择之前阅读文档。
您可以使用意图将数据从MinhaEscolaActivity
传递到MenuActivtiy
,然后在MenuActivity
自我执行
答案 1 :(得分:1)
你不应该自己创建一个活动对象。活动是一个主要的Android组件,意图由系统创建。
如果要在活动之间共享某些功能,则应创建另一个类,并在活动中实例化对象。
如果您还要分享数据,可以考虑一些共享数据的标准方法,因为您可以阅读in this answer
您在第二个类构造函数上创建的对象是什么?你可以启动活动并获得结果,但是你只应该这样做,如果实际上你需要显示一个新的视图或以不同的方式与用户交互,你不应该告诉系统只是为了调用一个函数来运行一个新的活动。