草庐IT

savedinstancestate

全部标签

java - 为什么使用 XML 创建 GUI 是 Android 中的一个好习惯

我来自JavaSwing背景。我可以知道为什么在Android中使用XML创建GUI是一个好习惯吗?例如,而不是将代码写在(这让我在使用Swing桌面应用程序时感觉更舒服)importandroid.app.Activity;importandroid.os.Bundle;importandroid.widget.TextView;publicclassHelloAndroidextendsActivity{/**Calledwhentheactivityisfirstcreated.*/@OverridepublicvoidonCreate(BundlesavedInstanceSt

java - 没有这样的实例字段

我试图让我的应用程序在使用onSaveInstanceState更改屏幕方向时保存一些数据以保存boolean值mCheated。我设置了很多断点,但在变量View中出现了mCheatedboolean值的错误mCheated=Nosuchinstancefield:'mCheated'我不知道为什么当Activity开始时我用值false声明它,如果按下按钮则将其更改为true。谁能帮帮我?packagecom.bignerdranch.android.geoquiz;importandroid.app.Activity;importandroid.content.Intent;im

android - 我应该在 onCreate 还是 onRestoreInstanceState 中恢复 savedinstancestate?

我有一个为结果启动其他Activity的Activity,因此当结果返回时,该Activity可能已被销毁并重新创建。我已经重写了onSaveInstanceState,以便添加需要保存和恢复的数据。当Activity被销毁并重新创建时,onCreate被传递给savedInstanceState包;但是也onRestoreInstanceState()被调用并传递了同一个包。那么我应该把从包中提取数据并恢复状态的代码放在哪里?在onCreate中还是在onRestoreInstanceState中?后者是否保证总是被调用?是否可以在不调用onCreate的情况下调用onRestore

android - 我应该在 onCreate 还是 onRestoreInstanceState 中恢复 savedinstancestate?

我有一个为结果启动其他Activity的Activity,因此当结果返回时,该Activity可能已被销毁并重新创建。我已经重写了onSaveInstanceState,以便添加需要保存和恢复的数据。当Activity被销毁并重新创建时,onCreate被传递给savedInstanceState包;但是也onRestoreInstanceState()被调用并传递了同一个包。那么我应该把从包中提取数据并恢复状态的代码放在哪里?在onCreate中还是在onRestoreInstanceState中?后者是否保证总是被调用?是否可以在不调用onCreate的情况下调用onRestore

java - Activity 类中的静态字段是否保证比创建/销毁周期更长?

我经常遇到一个问题,即我必须在Activity的多次调用之间保留状态(即,经历几个onCreate()/onDelete()循环)。不幸的是,Android对此的支持真的很差。作为一种保存状态的简单方法,我认为由于类加载器只加载一次类,因此在静态Bundle字段中存储在Activity的多个实例之间共享的临时数据是安全的。但是,偶尔,当实例A创建静态包并在其中存储数据,然后被销毁,实例B尝试从中读取时,静态字段突然为NULL。这是否意味着在Activity经历创建/销毁周期时,类已被类加载器删除并重新加载?static字段在之前引用对象时怎么会突然变为NULL?

java - Activity 类中的静态字段是否保证比创建/销毁周期更长?

我经常遇到一个问题,即我必须在Activity的多次调用之间保留状态(即,经历几个onCreate()/onDelete()循环)。不幸的是,Android对此的支持真的很差。作为一种保存状态的简单方法,我认为由于类加载器只加载一次类,因此在静态Bundle字段中存储在Activity的多个实例之间共享的临时数据是安全的。但是,偶尔,当实例A创建静态包并在其中存储数据,然后被销毁,实例B尝试从中读取时,静态字段突然为NULL。这是否意味着在Activity经历创建/销毁周期时,类已被类加载器删除并重新加载?static字段在之前引用对象时怎么会突然变为NULL?

android - 为什么在添加 fragment 时检查 savedInstanceState == null?

在fragmentdoc中,在其中一个示例中,他们在添加fragment时检查savedInstanceState==null:publicstaticclassDetailsActivityextendsActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);if(getResources().getConfiguration().orientation==Configuration.ORIENTATION_LANDSCAPE){//Ift

android - 为什么在添加 fragment 时检查 savedInstanceState == null?

在fragmentdoc中,在其中一个示例中,他们在添加fragment时检查savedInstanceState==null:publicstaticclassDetailsActivityextendsActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);if(getResources().getConfiguration().orientation==Configuration.ORIENTATION_LANDSCAPE){//Ift

android - 我可以在导航组件中使用多个 NavHostFragment 吗?

如果您对以下段落有理解困难,请查看我制作的流程图。我目前正在制作一个带有3个顶级目的地的笔记应用程序。顶级目的地之一(NotesList)显示用户创建的笔记列表。NotesList有一个过滤器按钮,它会弹出一个带有FilterMenu目标的底部模式表。FilterMenu有一个搜索按钮,单击时,将工作表的内容替换为搜索目标和一个名为标签的按钮,单击时,将工作表的内容替换为包含与所有注释关联的标签列表的fragment(TagList目的地)。蓝色的一切都是顶级目的地。紫色的所有内容都显示在模态表中。FilterMenu、Search和TagList显示在模式表中。这意味着NotesLi

android - 我可以在导航组件中使用多个 NavHostFragment 吗?

如果您对以下段落有理解困难,请查看我制作的流程图。我目前正在制作一个带有3个顶级目的地的笔记应用程序。顶级目的地之一(NotesList)显示用户创建的笔记列表。NotesList有一个过滤器按钮,它会弹出一个带有FilterMenu目标的底部模式表。FilterMenu有一个搜索按钮,单击时,将工作表的内容替换为搜索目标和一个名为标签的按钮,单击时,将工作表的内容替换为包含与所有注释关联的标签列表的fragment(TagList目的地)。蓝色的一切都是顶级目的地。紫色的所有内容都显示在模态表中。FilterMenu、Search和TagList显示在模式表中。这意味着NotesLi