首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止tilt调用onCreate,以及活动运行的时间测量。

防止tilt调用onCreate,以及活动运行的时间测量。
EN

Stack Overflow用户
提问于 2012-08-29 08:24:42
回答 3查看 392关注 0票数 1

您好,并提前感谢您的时间和关注。实际上,我有两个问题,我对构建一个android应用程序不是很确定。我相信很基本的东西:

1)我的应用完全处于水平模式,比如AngryBirds。当它启动时,用户会认为他应该像这样拿着手机,如果他还没有这样做的话。这是在所有活动的清单中设置的,并且运行良好。但是有没有办法防止物理设备再次倾斜来调用onCreate呢?我可以重写它的方法或其他什么吗?我问的原因,是因为我有一些ButtonViews,在你点击它们之后,改变它们的图片。在设备倾斜之后(我实际上使用的是模拟器,所以它是Ctrl+F11的,但我相信它也会在设备上发生),所有的ImageButtons都会丢失它们的图片。长话短说-有没有更好的方法来做这件事,你可以推荐或者是阻止倾斜做任何事情都是可能的或更好的?

2)知道用户在屏幕上停留了多少秒的最好方法是什么?我尝试使用通过SystemClock.currentThreadTimeMillis()获得的两个长时间,如下所示:获取开始时间onCreate,以及我调用的方法的结束时间,以便在startActivity之前移到第二意图。但我认为因为它们是从不同的线程调用的,所以结束点-起始点是不正确的。有什么方法可以确保SystemClock.currentThreadTimeMillis()的两个方法都是从同一个线程调用的,这个线程是我正在停止监视的活动的主线程?有没有更好的方法来解决这个问题?

再次感谢。

EN

回答 3

Stack Overflow用户

发布于 2012-08-29 08:33:31

  1. 你处理方向改变是正确的。请参阅此链接http://developer.android.com/guide/topics/resources/runtime-changes.html。这将帮助你让它工作。
  2. 的好方法是计算onResume和onPause之间的时间。如果要恢复活动,则不会一直调用OnCreate。
票数 2
EN

Stack Overflow用户

发布于 2012-08-29 08:30:51

1)您可以尝试将属性android:configChanges="orientation"添加到清单文件中的活动中。当我的动态操作栏标签在屏幕旋转时变得混乱时,它对我起作用了。

票数 0
EN

Stack Overflow用户

发布于 2012-08-29 08:33:27

  1. 你需要在android清单中为你的每个活动指定方向,然后它将不会调用onCreate。查看http://developer.android.com/guide/topics/manifest/activity-element.html
  2. User,查看从onResume开始到onPause结束的活动,并与之交互。其他时候,它不能保证用户实际看到并可以点击活动中的某些东西。System.getCurrentMillis()已经足够好了。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12169344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档