当你编辑某Text视图时可能会打断当前编辑切换到另外的活动中,如果要持久你的编辑状态那么应该在Activity.onPause()里面做文章, 例如:
@Override
protected void onPause() {
super.onPause();
SharedPreferences.Editor editor = getPreferences(0).edit();
editor.putString("text", mSavedEditText.getText().toString());
editor.putInt("selection-start", mSavedEditText.getSelectionStart());
editor.putInt("selection-end", mSavedEditText.getSelectionEnd());
editor.commit();
}
当试图重新获得焦点时 需在Activity.onResume中操作 如下:
@Override
protected void onResume() {
super.onResume();
SharedPreferences prefs = getPreferences(0);
String restoredText = prefs.getString("text", null);
if (restoredText != null) {
mSavedEditText.setText(restoredText, TextView.BufferType.EDITABLE);
int selectionStart = prefs.getInt("selection-start", -1);
int selectionEnd = prefs.getInt("selection-end", -1);
if (selectionStart != -1 && selectionEnd != -1) {
mSavedEditText.setSelection(selectionStart, selectionEnd);
}
}
}
分享到:
相关推荐
持久化技术则是提供了一种机制可以让数据在瞬时状态和持久状态之间进行转换, Android系统中主要提供了3种方式用于简单地实现数据持久化功能, 即文件存储, SharePreference存储, 以及数据库存储. 当然你也可以将数据...
(10) 网络状态检测模块:当网络状态改变时,对其进行检 6、LoonAndroid 项目地址:https://github.com/gdpancheng/LoonAndroid 主要有以下模块: (1) 自动注入框架(只需要继承框架内的application既可) (2) ...
在解析网页信息的时候,需要登录后才能访问,所以使用httpclient模拟登录,然后把cookie保存下来,以供下一次访问使用,这时就需要持久化cookie中的内容。 在之前先科普一下基础知识: 什么是Cookies? Cookies是...
9.4 使用首选项保存状态 9.5 参考资料 9.6 小结 第10章 探索安全性和权限 10.1 理解Android安全性模型 10.1.1 安全性概念概述 10.1.2 为部署签名应用程序 10.2 执行运行时安全性检查 10.2.1...
Jetpack Compose库,用于基于DataStore首选项持久地记住状态。 入门 库通过Maven Central分发。 要使用它,您需要在模块build.gradle添加以下依赖build.gradle : dependencies { implementation ' dev.burnoo:...
概述 有图有真相,所以先上图: 上图是从Android官网截下的Activity的生命周期流程图,结构...活动状态一般是指该Activity正处于屏幕最显著的位置上显示,即该Activity是在Android活动栈的最顶端。 一般地当Activi
其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理Struts和Hibernate。 WebStorage HTML新增的本地存储解决...
9.4 使用首选项保存状态 9.5 参考资料 9.6 小结 第10章 探索安全性和权限 10.1 理解Android安全性模型 10.1.1 安全性概念概述 10.1.2 为部署签名应用程序 10.2 执行运行时安全性检查 10.2.1...
Droid Wall是一个类似于 Linux 下的 iptables 的 Android 手机防火墙软件,界面运行效果请参见演示截图所示。本防火墙APP可以限制某些应用访问数据网络,包括 2G/3G 以及 Wi-Fi。这个源代码项目共包括了以下模块: ...
下面说xmpp类的作用 XmppConnectionListerner是xmpp的连接状态的listener,比如断线等XmppMessageInterceptor是发出消息的listener,在此拦截并持久化聊天纪录XmppMessageListener是收到消息的listener,在此拦截并...
android 持久化的状态选择器,自定义dialog,fragmentTabhost的用法, swipeLayoutRefresh的用法,封装网络请求框架,自定义过渡状态视图
该项目已弃用! 感谢使用过Android Priority Job... 如果您使用的是v1,请参见此处的迁移指南: dependencies { compile ' com.birbit:android-priority-jobqueue:2.0.1 '}主构建状态Android优先作业队列(作业管理
了解项目的基本文件目录结构,了解Activity周期中的4种状态。 【过程】 (1)建立新项目,实现Hello World; 1)打开Eclipse,选择File -> New -> Android Project. 2)填写project name(helloword),然后选择选择...
Trigger 的特性单个作业支持多个条件组合内部条件:充电中\无法检测网络状态\设备空闲支持作业持久化,这意味着可在设备重启时触发支持作业截止时间可根据配置在后台或者主线程中运行作业示例代码:Job job = ...
数据库使用:为了存储用户信息、商品数据等,项目可能会集成SQLite数据库或使用Room持久性库。这样可以在本地模拟数据的存储和读取,而无需依赖真实的后端服务器。第三方服务集成:项目可能集成了第三方服务,如...
11.activity对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(d) A、onPause() B、onCreate() C、 onResume() D、onStart() Intent传递数据时,下列的数据类型哪些可以被传递(abcd)...
演示者,用于在配置更改中持久保存视图状态 将传统的视图点击侦听器转换为Kotlin流并进行 房间-提供超过SQLite的抽象层 改造-键入安全的http客户端并开箱即用支持协程。 Moshi -JSON解析器,用于解析实体在数据层上...
本文实例讲述了Android编程开发之NotiFication用法。分享给大家供大家参考,具体如下: notification就是通知的意思,安卓中指通知栏,一般用在电话,短信,邮件,闹钟铃声,在手机的状态栏上就会出现一个小图标,...
状态栏和虚拟键 快速开发框架 数据交互 持久化存储 蓝牙通信 权限请求框架 网络请求框架 作者 项目 JiangHaiYang01 Retrofit 与 协程结合 断点下载 上传,网络缓存 JiangHaiYang01 Retrofit 与 RxJava 完美结合,...
数据持久化技术,包括文件存储、SharedPreferences存储以及数据库存储,都只能在当前应用程序中访问。跨程序数据共享需要用到另一种技术——内容提供器。 7.1 内容提供器简介 内容提供器(Content Provider...