【问题标题】:Android LifeCycle Methods [closed]Android生命周期方法[关闭]
【发布时间】:2013-07-15 06:12:23
【问题描述】:

我是 Android 开发新手,我有一个问题:

我必须在Android Activity LifeCycle的哪个方法中放置Views的事件,例如当我点击一个按钮时会发生什么。

onCreate 还是onResume,为什么?

【问题讨论】:

  • 为什么这个问题会减分!!!!!!
  • 因为你没有做作业。请不要依赖 Stackoverflow 来解决所有问题,首先尝试用谷歌搜索这些东西,如果您没有找到好的答案,请来 stackoverflow 寻求答案。给你读这个 - developer.android.com/training/basics/activity-lifecycle/…
  • 我不确定这个问题是否会受到如此多的反对 - 有许多愚蠢的问题得分为正。 @MGCR7 正在询问 what is the best method to set view action listeners and why。问起来可能看起来很傻,但乍一看,情况并非如此。请给愚蠢的问题和非常愚蠢的问题打分。
  • @Varundroid 谢谢你,但这不是家庭作业,我在做项目,我不知道应该用哪种方法编写我的 onclick 事件。
  • @gunar 我怀疑很多人认为对某个问题投赞成票就是“我也是”。

标签: android android-activity activity-lifecycle


【解决方案1】:

在大多数情况下,您应该在onCreate 中拥有它,因为此方法被调用一次,并且您可能希望设置这些动作侦听器一次。 onResume,根据活动生命周期可能会被多次调用,根据Activity life cycle doc,你会无缘无故地重新设置那些动作监听器。

但是,如果您希望每次 Activity 再次可见时为该动作侦听器提供可自定义的行为,则可能值得将您的动作侦听器设置为 onResume,但这可能适用于一小部分的控件,我想这将是非常罕见的。

【讨论】:

    【解决方案2】:

    希望对您有所帮助:

    你应该初始化你的变量并在onCreate()方法中写你的onClick事件,因为它在Android的LifeCycle中的所有方法之前被调用并且它在LifeCycle中被调用一次..

    欲了解更多信息,请参阅此链接:Click Here

    【讨论】:

      【解决方案3】:

      通过这个article

      正如你在java中所说,我们在main方法中调用函数。

      在android中如果java类extends activity你可以调用Activity的任何生命周期事件中的方法,这取决于你的需要 。例如,如果您想在进入活动时调用方法,请遵循此

      public class MainActivity extends Activity {
      
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
           setContentView(R.layout.activity_main)//To set up ui for activity
      
          getDispalay();
      }
      
      public void getDispalay(){
       //your actions
      }
      

      您还可以在其他生命周期中调用方法阅读this

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-12
        • 2013-02-06
        • 2016-11-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-16
        相关资源
        最近更新 更多