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);

    }
时间: 2024-10-09 12:44:59

Android——Activity恢复用户用EditText输入的数据的相关文章

[Android]Activity跳转传递任意类型的数据、Activity为SingleTask时代替StartActivityForResult的解决方案

以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4389674.html 需求:在ActivityA跳转到ActivityB,然后在ActivityB操作完返回数据给ActivityA. 这个很普遍的需求,一般情况是使用startActivityForResult的方式去完成. 但是当ActivityB为SingleTask时,这个方式就无效了.你会发现当你执行startActivityForResult后,o

Android EditText输入字数限制总结(包括中文输入内存溢出的解决方法)

限定EditText输入个数的解决方案很多,但是一般主要考虑两点,也就是处理两件事: (1)不同语言字符(英文.中文等)处理方式 (2)输入字符达到数目后,是否仍然允许用户输入 第一点,涉及的东东其实蛮多,不同语言在不同编码中占据字节数等,不同语言在U8等编码的表示范围等,这一整块知识很丰富, 自己暂时没有理的特别顺,稍后整理再说吧. 第二点,目前主流app的处理方案也各有不同,qq5.0以前的版本,发表说说貌似是没有字数限制的(我试了一个350字左右的照样发), 5.0以后限制了,这样如果用户

Android EditText输入字数限制总结(包含中文输入内存溢出的解决方法)

转载请注明,大飞:http://blog.csdn.net/rflyee/article/details/38856539 限定EditText输入个数的解决方式非常多,可是一般主要考虑两点.也就是处理两件事: (1)不同语言字符(英文.中文等)处理方式 (2)输入字符达到数目后,是否仍然同意用户输入 第一点,涉及的东东事实上蛮多,不同语言在不同编码中占领字节数等,不同语言在U8等编码的表示范围等,这一整块知识非常丰富,自己临时没有理的特别顺.稍后整理再说吧. 第二点.眼下主流app的处理方案也

Android 在界面中显示以及输入文本信息 TextView和EditText

Android控件之TextView和EditTextTextView:显示文本框控件EditText:输入文本框TextView和EditText的常用属性TextView控件的常用属性android:id 控件的idandroid:layout_width 控件的宽度android:layout_height 控件的高度android:text 文本内容android:textSize 文本大小android:textColor 文本颜色android:background 控件背景Edit

Android实现限制EditText输入文字的数量

一: 声明控件. TextView hasnumTV; TextView hasnum;// 用来显示剩余字数 int num = 50;// 限制的最大字数 二: 主要的方法: hasnumTV = (TextView) findViewById(R.id.tv_num); hasnumTV.setText("限" + num + "" + "字以内"); editText.addTextChangedListener(new TextWatc

android 设置字体颜色、EditText自动输入转换成大写字母的多种方式

在TextView上面设置某一个字的字体颜色为指定颜色时,可以通过java类SpannableString类和Html语言来实现. (一)SpannableString类方式 private void setText(TextView t){ String text = t.getText().toString().trim(); SpannableString span = new SpannableString(text); span.setSpan(new ForegroundColorS

android 之EditText输入检测

最近开发一个功能的时候发生一个故事,其情节如下: 功能其实不复杂,其中需要一个EditText来获取用户输入的信息.于是,我做了一个Dialog来显示我的输入界面(代码如下): mAlertDialog = new AlertDialog.Builder(this)//, android.R.style.Theme_Holo_Light .setIcon(R.drawable.ic_dialog_info_light) .setTitle(R.string.model_rename_device

android的edittext输入长度

http://blog.csdn.net/uyu2yiyi/article/details/6329738 http://flysnow.iteye.com/blog/828415/ http://songfantasy.iteye.com/blog/1172362 android的edittext输入长度,布布扣,bubuko.com

android控件之TextView(显示文本框控件)和EditText(输入文本框控件)

一.TextView(显示文本框控件) 1.TextView控件的常用属性 android:id——控件的id   android:layout_width——控件的宽度  android:layout_height——控件的高度 android:text——文本内容 android:textSize——文本大小 android:textColor——文本颜色 android:background——控件背景 <TextView android:id="@+id/name" an