我的理解是所有具有ID的标准视图都应该自动保存它们的状态,并且在尝试这个例子时我发现它非常令人困惑。

我只有1个活动和主要布局如下所示。

当我通过单击按钮更改TextView的文本,然后旋转屏幕时,TextView实际上会保存它的状态,但在再次旋转时,它会重置为默认状态。

如果我在横向和旋转时编辑它也会发生同样的情况:首先旋转它仍然保存它的状态,但是在另一次旋转之后(除非我再次更改文本)它会重置为默认值。

我现在真的很困惑。 有人可以向我解释一下这种行为。 我无法find解释这种特定行为的任何其他问题(或答案)。

activity_main.xml中:

MainActivity.java:

package com.example.viewstatetest; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends AppCompatActivity { private TextView textView; private EditText editText; private View button; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = (TextView) findViewById(R.id.activity_main_textView); editText = (EditText) findViewById(R.id.activity_main_editText); button = findViewById(R.id.activity_main_button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { textView.setText(editText.getText()); } }); } }

如果查看TextView源(特别是TextView#onSaveInstanceState() ),您将看到仅在两种情况下保存文本:

当用户通过android:freezesText="true"设置freezeText标志为true时明确要求这样做android:freezesText="true"或TextView#setFreezesText(true)

当TextView中的文本有选择时。

在您的情况下,这两种情况都是错误的,因此在方向更改期间您的文本将重置为其默认状态。

简单地更改布局将解决问题:

android 保存textview,为什么没有TextView(带ID)会自动保存它的状态?相关推荐

  1. Qt编写的CAN通信调试工具源代码支持吉阳光电CAN盒和致远周立功USB转CAN卡,带多线程接收 可完成标准和扩展CAN帧YID发送和接收,带配置参数自动保存,定时发送,帧类型选择,文本和十六进制等

    Qt编写的CAN通信调试工具源代码支持吉阳光电CAN盒和致远周立功USB转CAN卡,带多线程接收 可完成标准和扩展CAN帧YID发送和接收,带配置参数自动保存,定时发送,帧类型选择,文本和十六进制等. ...

  2. 保存自动修复_CAD小技巧:怎样将自动保存的图形复原

    不知道大家有没有试过这么一种情况,就是在CAD设计过程中,软件崩了,源文件已经损坏了而且无法修复. 但是天无绝人之路,CAD本身就有一个自动保存功能,那么问题随之而来,即便自动保存,那要怎样才能找到呢 ...

  3. 如何id变动自动保存html软件,Wordpress折腾小记:彻底解决ID不连续的问题-自动保存、自动修订 | 地瓜哥博客网...

    使用Wordpress,尤其从3.0走入Wordpress世界的朋友,也许都遇到过一个问题:自动保存(Auto-Save)和文章修订(Post-Revisioning)功能导致文章ID不连续的问题.有 ...

  4. php 保存表单数据,使用jquery和php自动保存表单数据

    我对PHP非常好,但是使用jQuery的总菜单,并且卡在自动保存表单数据中. 自动保存功能在dummy.php中每30秒调用一次.我正在将用于处理的序列化表单数据( – >数据库)发送到save ...

  5. jpa批量保存,事务没提交_在事务外自动保存托管JPA实体

    jpa批量保存,事务没提交 Spring中的存储库和事务并存. Spring中的所有数据库访问都应在事务内运行,并且通常在某个地方使用@Transactional来强制执行此操作. 但是,这并不总是必 ...

  6. cdr保存的内容计算机搜不到,CorelDRAW自动保存的文件在哪里?

    当CorelDRAW发生系统错误,导致软件崩溃后,很多小伙伴表示找不到自动保存的文件在哪里,关于这一问题,小编做统一解答. 操作步骤如下: 1.打开CorelDRAW X8软件. 2.选择" ...

  7. java 黑马头条 day4 自媒体文章发布 自媒体文章列表查询 频道列表展示 自媒体文章-发布、修改、保存草稿 自媒体文章-根据id查询 自媒体文章-删除

    1 自媒体文章列表查询 1.1 需求分析 1.2 表结构和实体类 wm_news 自媒体文章表 需求: 如果有文章标题,按照文章标题模糊查询 如果有频道信息,按照频道ID查询 如果有文章状态,按照状态 ...

  8. Win10屏幕截图自动保存方法

    我在Win10系统下屏幕截图一般直接用键盘上的PrtSc键,这时候截图会自动保存在剪贴板里,但是剪贴板默认保存一项内容,所以如果后续有新截图,这张截图就会被覆盖.如果想在这种前提下保存截图,就需要打开 ...

  9. 保存时自动加分号_CAD自动保存文件扩展名是什么?如何快速恢复自动保存文件?...

    下面是本公众号文章分类目录,点击标题文字可打开分类文章列表: 安装卸载  异常.退出  文件及输入输出  基本操作技巧  各种设置及相关问题  界面和显示相关问题  快捷键  视图设置和调整  图层  ...

  10. sublime自动保存(失去焦点自动保存)

    sublime是轻量的编辑器,经常用sublime编辑器来做一些小例子,使用起来很方便. 在使用sublime的时候需要不断的 ctrl + s 保存代码,才能看到效果. 这样的操作很繁琐,保存的多了 ...

最新文章

  1. 使用Git前的准备工作
  2. nutshell_Nutshell中的Java 8语言功能-第1部分
  3. 两个形状不同的长方形周长_人教版数学六年级上册 5.2:圆的周长 微课视频|知识点|课件解析|同步练习...
  4. PIE SDK地图书签
  5. 新浪微博OAuth2.0 VS OAuth1.0 主要区别总结
  6. Javascript学习待续
  7. 2019年10月江苏计算机二级C语言编程题解析
  8. 使用Intel NCS算力棒 安装部署记录 VirtualBox With Ubuntu16.04 Source Aliyun
  9. CISCO模拟器综合应用
  10. Android 分贝测试仪功能,挥泪整理面经
  11. 如何判断一个PCIe的capability是哪个capability
  12. 《霍比特人2》:我靠,洞里有条好大的龙!!!
  13. 微软蓝牙鼠标3600拆解
  14. 应急响应中的入侵排查和权限维持
  15. shell命令以及运行原理和Linux权限
  16. Python程序员的浪漫-实现每天定时给Ta推送微信公众号消息提醒超详细教程
  17. 用Python优雅地制作动态条形图
  18. 美国大学计算机工程专业排名,2018美国大学计算机工程专业排名_美国大学计算机工程排名...
  19. 502 Bad Gateway 怎么解决?
  20. SpringAOP所支持的AspectJ切点指示器

热门文章

  1. 集成学习--百面机器学习
  2. Python3 函数function
  3. Evaluation and Validation of AssemblingCorrected PacBio Long Reads for MicrobialGenome Completion
  4. js 动态 添加 tabel 表格
  5. python gevent 协程
  6. pandas.read_csv(path_features_known_csv, header=None)的用法
  7. 解决pip安装时出现报错TypeError: unsupported operand type(s) for -=: ‘Retry‘ and ‘int‘
  8. html浏览位置坐标,HTML5教程 | HTML5地理定位(GeoLocation API)
  9. linux关闭防火墙stop,linux如何关闭防火墙
  10. MySql各种锁机制的学习