Android——Activity恢复用户用EditText输入的数据
Posted Chen_s
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android——Activity恢复用户用EditText输入的数据相关的知识,希望对你有一定的参考价值。
说明:
在横屏输入的内容,在Activity销毁后,即横屏后,获取用户输入的内容
步骤:
1.在xml页面定义EditText的id
2.用onSaveInstanceState保存用户输入的数据
(1)调父类
(2)用findViewById使用id查找并获取View的实例(View所有控件的父类,再强制转换一下)
(3)找到实例,获取文本内容:转为字符串 get
(4)将获取到内容保存起来 put
3.用onRestoreInstanceState恢复数据
(1)先获取数据 get
(2)操作view实例 find
(3)设置文本框内容 set
excise1.xml
<EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="40dp" android:id="@+id/ett" />
excise1.java
//恢复用户用EditText输入的数据 //获取保存用户输入的数据 //为方便定义成员变量 String edd = "edittext"; @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); //1.使用id查找并获取View的实例(View所有控件的父类,再强制转换一下) EditText et = (EditText)findViewById(R.id.ett); //2.找到实例,获取文本内容:转为字符串 get String str = et.getText().toString();//局部变量 Log.e("tag","获取用户输入的内容"+str); //3.将获取到内容保存起来 put outState.putString(edd,str);//outState.putString("edittext",str); } //保存恢复用户输入的数据 @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); //恢复用户输入的数据 //先获取数据 get String str = savedInstanceState.getString(edd);//savedInstanceState.getString("edittext"); Log.e("tag","恢复用户输入的内容"+str); //操作view实例 //恢复输入框里面的内容(设置) set EditText et = (EditText)findViewById(R.id.ett); //为方便可定义全局变量EditText et et.setText(str); }
以上是关于Android——Activity恢复用户用EditText输入的数据的主要内容,如果未能解决你的问题,请参考以下文章
Android课程---Activity中保存和恢复用户状态
Android Fragment使用 Activity, Fragment, WebView的状态保存和恢复