从后按返回到应用程序后,接口不重装

我现在有一组选项卡,每个绑在片段,而我终于得到了在其中一个选项卡的用户界面看起来应该如何。 下面是应用程序的外观时,它已经正确加载(首次推出,并滚动到一个标签后)的截图: 从后按返回到应用程序后,接口不重装

现在,我打的后退按钮后(我没有,也不会与backStack困扰着每一个标签 - 我不喜欢这样的UI模式),然后使用应用程序切换器或发射器重新启动,我questionRows都不见了(他们不重新加载)。 我是否需要实施的onPause东西救我的显示器? 为什么不onResume照顾它呢?

package com.davekelley.polling; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.ScrollView; import android.widget.TableLayout; import android.widget.TableRow; import android.widget.TextView; import android.support.v4.app.Fragment; public class EconFragment extends Fragment { private ViewGroup container; private TableLayout questionContainer; private ScrollView scrollView; private ViewGroup econFragment; static int pos = 0; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { Log.d("Econ", "onCreateView"); this.container = container; return inflater.inflate(R.layout.econfragment, container, false); } public void onResume() { super.onResume(); questionContainer = (TableLayout) getActivity().findViewById(R.id.questionContainer); LayoutInflater inflater = (LayoutInflater) getActivity(). getSystemService(Context.LAYOUT_INFLATER_SERVICE); //these lines are my first attempt to try and get the questions to repopulate after returning //from pressing back - as of yet, they don't repopulate the screen: //View econFragment = inflater.inflate(R.layout.econfragment, null); //container.addView(econFragment); int leftMargin=5; int topMargin=5; int rightMargin=5; int bottomMargin=5; while (pos < 10) { View question = inflater.inflate(R.layout.question, null); question.setId(pos); pos++; TableRow tr = (TableRow) question; TableLayout.LayoutParams trParams = new TableLayout.LayoutParams( TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.WRAP_CONTENT); trParams.setMargins(leftMargin, topMargin, rightMargin, bottomMargin); tr.setLayoutParams(trParams); questionContainer.addView(tr); } Log.d("Econ", "onResume"); } public void onAttach(Activity activity) { super.onAttach(activity); Log.d("Econ", "onAttach"); } public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d("Econ", "onCreate"); } public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); Log.d("Econ", "onActivityCreated"); } public void onStart() { super.onStart(); Log.d("Econ", "OnStart"); } public void onPause() { super.onPause(); Log.d("Econ", "onpause"); } public void onStop() { super.onStop(); Log.d("Econ", "onstop"); } public void onDestroyView() { super.onDestroyView(); Log.d("Econ", "ondestroyview"); } public void onDestroy() { super.onDestroy(); Log.d("Econ", "ondestroy"); } public void onDetach() { super.onDetach(); Log.d("Econ", "ondetach"); } }

--------------解决方案-------------

每个活动都有自己的生命周期,从周期到的onCreate 的onDestroy。 看看图片,非常详细的文章在这里:生命周期活动

您的活动去,虽然周期,当用户按下PowerButton后退按钮会自动死亡。 当您关闭电源或重新启动,然后从活动开始( 的onCreate)开始。

您应该实现保存载入功能,节省onPaused回调负荷状态onResume回调状态。 这将避免失去之间重新启动您的活动状态。

这个问题有点儿得到了提上了次要地位,因为我的工作我的应用程序的其它区域。 原来的解决方案是一个简单的:在代码中列出的POS变量是静态的,所以while循环无法从0-10 reclimb。 这里的答案:即使onCreateView再次运行,显示不正常返回后按重组?

分类:安卓 时间:2012-01-01 人气:1
分享到:

相关文章

  • Android的生命周期问题 2012-10-31

    我有一个短信广播接收器在我带一个静态布尔值的应用程序,使接收器激活. public class SmsListener extends BroadcastReceiver { public static boolean activated = false; @Override public void onReceive(Context context, Intent intent) if (activated){ //do something } ... } } 我有那么一个小工具来激活与否短信

  • Android的生命周期发生失灵 2012-03-09

    我试图将OnPause()事件期间保存键SharedPreferences,但这个被称为既当我离开活动,当我回到活动. 因此,我的价值观被覆盖零和默认值,当我回到活动,就像我会指望他们,因为这是我在OnCreate方法方法不回应. 也许我误解了Android的生命周期,但我见过的生命周期曲线了十几次,我的程序并不像我期望他们. 洞察赞赏. --------------解决方案------------- 从我的经验有些设备是完全迷恋着一个活动的事件生命周期. 我发现的唯一的解决办法是使活动作为独立

  • Android的生命周期方法 2013-03-20

    嗨什么是当一个活动是从另一个活动开始,并应在对应home键点击执行的方法执行了Android的生命周期方法. 有什么方法来检测用户按下home键? 在存在任何独特的方法thatexecute为home键的部分,我没有意思home键监听器? --------------解决方案------------- Android的活动周期. OnCreate中被称为在新的活动,在onPause在旧的. 您不能捕获的home键按下,还是用它做什么,但onUserLeaveHint被称为一个供参考.

  • 如何Android的生命周期活动有关工作的整个应用程序? 2013-09-19

    这似乎并没有被很好的记载和我错过了,所以我才跑了一堆我自己的测试中,我想知道是否有人已经知道的答案,其中的一些问题. 首先,当我说"应用程序"我指的是扩展Application类. http://developer.android.com/reference/android/app/Application.html 我的问题是如下,有些是相关的. 当用户离开活动从应用程序中,并且去其他应用程序的活动,并在应用某种方式暂停为好,即使它不具有的onPause()? 抑或是继续住取消暂停,直

  • Android的生命周期 - 我应该使用服务? 2012-06-08

    我创建一个聊天应用程序,我想知道如果我要使用一个服务,它会如何影响我的应用程序的生命周期. 据我所知,Android操作系统能破坏我的应用程序,如果没有足够的内存. 我的问题:这样做的应用程序,只使用活动,如果Android的破坏它们或接收器得到重新启动,我需要一个粘滞服务为这个? 我已经创建了两个应用程序,让我有几分的想法,但我只是想确认一下. 二,http://developer.android.com/reference/android/app/Service.html说: 需要注意的是服

  • Android的生命周期与远程服务和线程 2013-03-01

    我有一个将在服务最终将启动远程服务和线程的应用程序,我想知道:我应该实现生命周期方法,如在onPause(),onResume()的onDestroy()等在Android活动? 提前致谢! --------------解决方案------------- 如果你需要在这些方法中执行任何操作,那么你应该处理别的就没有必要处理. 在服务你需要释放所有资源的onDestroy()方法.

  • 关于Android activty生命周期的傻问题 2013-12-26

    我有活动+服务类. 当程序运行活动将被显示,服务将在启动onCreate活动的方法. 当我点击虚拟机的HOME键,主屏幕会出现,但活动将一直走 在这一点上,我不知道该程序在哪种情况-paused / stopped-? 发生了什么服务? (是不是还在运行?) 我怎么可以把使用该服务的活动面前? 谢谢... --------------解决方案------------- 那么你的情况的活动,如果你按下home键是暂停. 通过与按home键,它只是恢复它再次启动它. 对于服务:这取决于你如何启动服务

  • 似乎Android的生命周期方法不工作,我需要的方式 2014-03-06

    即将从iOS背景为Android,我发现在Android的程序生命周期方法不是在我所期望的方式成立. 例如,我需要执行一次任务在用户每次开始使用我的应用程序的时间. 该应用程序包括其派生多个子活动,因为它运行的主要活动. 如果我把任务的主要活动的onCreate()方法,它肯定被称为第一次用户启动应用程序. 然而,它并不总是得到,如果用户退出应用程序,后来重新进入叫. 我相信,这是因为Android已经没有真正破坏活动,因此它不需要重新创建它. 如果我把任务在onStart()或onResume

  • 安卓:Android的生命周期中保存状态 2014-03-09

    我指的http://developer.android.com/reference/android/app/Activity.html. 我具有由用户可以"中断"的活性,例如用户打开菜单调用偏好屏幕. 当调用偏好屏幕onSaveInstanceState(Bundle)被调用,我能救我的数据. 这很好至今. 但是,在按下返回键onRestoreInstanceState(Bundle savedInstanceState) 不叫. 所以,我怎么能救我的状态? 我有调用新的活动什么时候做

  • Android的生命周期:在数据填写活动在onStart()或onResume()? 2014-08-12

    如果您通过光标获取数据并填写屏幕上的数据,如设置窗口标题,在onStart()或onResume() onStart()似乎逻辑的地方,因为之后onStart()已经可以显示活动,尽管在后台运行. 值得注意的是我是有让我重新思考这个管理对话框中的一个问题. 如果用户旋转屏幕时对话框仍然打开, onCreateDialog()和onPrepareDialog()被调用者之间onStart()和onResume() 如果需要将基于数据的对话框需要之前有数据onResume() 如果我是正确的关于on

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.585 (s). 10 q(s)