@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
// Save UI state changes to the savedInstanceState.
// This bundle will be passed to onCreate if the process is
// killed and restarted.
savedInstanceState.putBoolean("MyBoolean", true);
savedInstanceState.putDouble("myDouble", 1.9);
savedInstanceState.putInt("MyInt", 1);
savedInstanceState.putString("MyString", "Welcome back to Android");
// etc.
super.onSaveInstanceState(savedInstanceState);
}
The Bundle is essentially a way of storing a NVP map, and it will get passed in to onCreate and also onRestoreInstanceState where you'd extract the values like this:
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
// Restore UI state from the savedInstanceState.
// This bundle has also been passed to onCreate.
boolean myBoolean = savedInstanceState.getBoolean("MyBoolean");
double myDouble = savedInstanceState.getDouble("myDouble");
int myInt = savedInstanceState.getInt("MyInt");
String myString = savedInstanceState.getString("MyString");
}
You'd usually use this technique to store instance values for your application (selections, unsaved text, etc.).
当一个Activity被kill之前,它可以调用onSaveInstanceState()来保存当前activity的状态信息。用来保存状态信息的Bundle会同时传给两个method,即onRestoreInstanceState() and onCreate().
分享到:
相关推荐
在WebPublish项目中,可以绘制一个活动图来展示用户发布新网页的完整流程,包括填写信息、验证、保存到数据库等步骤。 6. **用例图(Use Case Diagram)** 用例图描述了系统的主要参与者和他们与系统之间的交互。在...
1. **活动(Activity)**:WF中的基本构建块,代表一个可执行的操作,如发送电子邮件、等待用户输入等。 2. **工作流设计器(Workflow Designer)**:Visual Studio内置的工具,用于拖放式设计工作流逻辑,使开发者...
在描述中提到的"从网上down的例子",意味着这是一个从网络上下载的示例代码,可能是为了教学、学习或参考目的。这个名为"SinglePageFlowSolution"的压缩包可能包含了一个简单的单页流程示例,展示了如何在WF中创建一...
综上所述,持久化机制是WF 4.0中的一个重要组成部分,通过BookMark、InstanceStore以及PersistenceParticipant等关键概念和技术,可以实现复杂工作流的持久化操作,从而提高应用程序的可靠性和灵活性。
2. **Activity**:通话时间统计器的核心功能很可能由一个或多个Activity实现,它们是用户界面的主要载体。开发者可能创建了一个主活动来展示通话时间的总览,以及一个设置活动来允许用户配置应用的偏好。 3. **...
学习和理解这个“HelloWorld”例子,对于初学者来说是一个很好的起点,可以让他们快速掌握Workflow的基础概念和操作方式。随着对Workflow的深入理解,开发者能够构建更复杂的工作流,用于模拟各种业务逻辑,比如审批...
3. `<activity>`标签指定了使用`android.app.NativeActivity`作为主活动,这是一个内置的框架类,用于处理与NDK(Native Development Kit)代码的集成。 4. `<meta-data>`标签提供了要加载的共享库名(.so文件),在...
SQLite提供了一个SQL接口,允许开发者创建、查询和修改数据。你需要理解如何创建表,插入、更新和删除数据,以及编写复杂的SQL查询来实现特定的功能,如查找特定号码是否在拦截列表中。 **2. 广播接收器** 广播接收...
- **主要内容**:介绍如何创建一个基本的Android项目,并使用API Demo来演示各种功能。 - **关键点**: - 使用Android Studio或Eclipse等IDE进行项目搭建。 - 添加必要的依赖库和权限设置。 - 编写代码实现不同的...
如果在Activity中保存了一个静态变量,例如一个大位图,那么这个静态变量就会引用旧的Activity实例,阻止其被垃圾回收。如下所示: ```java private static Drawable sBackground; @Override protected void ...
在这个例子中,假设我们有一个`MyViewHolder`类,用于持有每个列表项的视图,以及一个包含数据的列表`List<MyData>`。 ```java public class MyAdapter extends RecyclerView.Adapter<MyViewHolder> { private ...
可以创建一个自定义的`LinearLayout`或`RelativeLayout`作为TitleBar,并添加所需的元素,如图标、标题文本等。 ```xml android:id="@+id/title_bar" android:layout_width="match_parent" android:layout_...
在这个例子中,每个视图可能包含一个复选框,用于用户选择。当屏幕方向改变时,Android系统会重新创建Activity和Fragment,这可能导致之前的状态丢失。为了解决这个问题,开发者需要将用户界面的状态保存起来,以便...
在Android开发中,百度地图API是一个非常常用的工具,它提供了丰富的功能,包括地图展示、定位、路线规划等。本文将详细讲解如何利用百度地图API在Android应用中获取经纬度坐标,以及解决GPS定位为null的问题。 ...
在这个例子中,我们定义了一个变量`lastItemIndex`来保存当前显示的最后一个项目的索引。`lastItemIndex`等于`firstVisibleItem + visibleItemCount - 1`。 2. **onScrollStateChanged()** 方法: 这个方法在滚动...
在Android开发中,ViewPager是一个非常重要的组件,它用于展示可滑动的页面集合。这个组件在许多应用中广泛使用,例如在应用的引导页、设置菜单或者内容切换时。`ViewPager`结合`PagerAdapter`,可以实现平滑的左右...
首次启动时,保存一个标记表示已启动过,之后不再显示启动页。 ```java private boolean isFirst() { SharedPreferences preferences = getSharedPreferences("LaunchPref", MODE_PRIVATE); return preferences...
在Android开发中,ViewPager是一个非常重要的组件,它允许用户通过左右滑动来浏览多个相互关联的页面。在早期的Android版本中,这种功能是通过HorizontalScrollView实现的,但随着Android 3.0(Honeycomb)的发布,...
在draw.io-note-master这个压缩包中,可能包含了使用draw.io绘制的各种UML图示例,你可以参考这些例子学习和实践。通过不断练习,你将能够熟练地运用draw.io绘制出专业且实用的UML图,提升你的软件设计能力。