`

[IOS]退出后文本框扔保持输入内容

    博客分类:
  • IOS
ios 
阅读更多

 

用户在文本框中输入一些内容,应用程序退出并且终止,当用户再次进来的时候,文本框中还会保持原来输

入的内容。

Interface BuilderScene中选中View Controller,打开右边的标识检查器 ,设Restoration ID(恢复标识)为viewController

 

恢复标识是iOS 为了实现UI状态保持和恢复添加的设置项目。我们还需要在应用程序委托对象AppDelegate代 码部分做一些修改,添加的代码如下:

 

-(BOOL)application:(UIApplication *)application shouldSaveApplicationState:(NSCoder *)coder{
    //allow to save UI state when app exit
    return YES;
}

-(BOOL)application:(UIApplication *)application shouldRestoreApplicationState:(NSCoder *)coder{
    //allow to restore UI state when app run
    return YES;
}

-(void)application:(UIApplication *)application willEncodeRestorableStateWithCoder:(NSCoder *)coder{
    //save UI data and state
    //save simple data
    [coder encodeFloat:2.0 forKey:@"Version"];
}

-(void)application:(UIApplication *)application didDecodeRestorableStateWithCoder:(NSCoder *)coder{
    //use when restore
    //restore data last time save
    float lastVer = [coder decodeFloatForKey:@"Version"];
    NSLog(@"last Ver = %f",lastVer);
}

 

 

想要实现具体界面中控件的保持和恢复,还需要在它的视图控制器中添加一些代码。我们在ViewController.m 中添加的代码如下:
{
        [super encodeRestorableStateWithCoder:coder];
        [coder encodeObject:self.txtField.text forKey:kSaveKey];
    }
    -(void)decodeRestorableStateWithCoder:(NSCoder *)coder
    {
        [super decodeRestorableStateWithCoder:coder];
        self.txtField.text = [coder decodeObjectForKey:kSaveKey];
    }
 

 

分享到:
评论

相关推荐

    iOS键盘控制示例

    在iOS中,键盘弹出时可能会遮挡文本框,影响用户查看和输入。为了优化用户体验,开发者可以使用键盘通知来控制键盘的行为。例如,当键盘出现时,可以通过调整视图控制器的布局或者使用`UIScrollView`来上移内容,...

    封装ios弹框

    本文将深入探讨如何在iOS中实现完全自定义的弹框,并且特别关注如何添加文本框占位符并使其不贴边框。 首先,让我们了解什么是弹框。在iOS中,弹框通常被用来显示临时的通知、询问用户输入或者进行一些简单的操作。...

    IOS应用源码之MobileTerminal-A GUI Terminal application for the iPhone

    UI元素可能包括文本框(用于显示命令输出),按钮(如运行、清除、退出等),以及可能的下拉菜单或键盘快捷键,以方便命令输入。 2. 终端引擎:这部分代码实现了命令行解析和执行的功能,可能包含一个命令解释器,...

    【Interface Builder, Controls, Target-Action】[PDF] [iPhone/iPad/iOS]

    在给定的文件信息中,我们探讨了iOS应用开发的核心概念与技术,特别是关于Interface Builder、Controls、Target-Action以及模型-视图-控制器(Model-View-Controller,MVC)设计模式的关键知识点。 ### Interface ...

    iOS App开发中UITextField组件的常用属性小结

    18. Auto-enable Return Key:当文本框至少输入一个字符后,返回键才变为可用,提升用户输入体验。 19. Secure:用于密码输入,选中后,输入的字符将以星号显示,保护用户隐私。 最后,我们讨论两个与UITextField...

    iPhone UIKit 详解

    7. **UITextField/UITextView**: 收集用户输入的文本,前者通常用于单行输入,后者用于多行文本编辑。 8. **UIImageView**: 显示图片的控件,可以用来展示静态或动态图像。 9. **UITableView/UICollectionView**: ...

    mvc设计模式

    在iOS应用开发中,视图通常是由各种UI控件构成的界面,如标签、按钮、文本框等。 3. **Controller(控制器)**:这部分充当Model和View之间的桥梁。它负责处理用户的输入,控制数据流向以及更新视图。简而言之,...

    邮件客户机

    - **Clear按钮**:清除目标邮箱和邮件内容,将相关文本框内容清空。 - **Quit按钮**:调用系统函数退出应用程序。 4. **源代码**: 提供的源代码中,有两个类: - `MailMessage.java`: 这个类用于存储邮件的...

    CS193P_4_ModelViewController

    在iOS应用开发领域,模型-视图-控制器(Model-View-Controller, MVC)设计模式是一种广泛采用的架构,用于将应用程序的数据表示、用户界面和控制逻辑分离。在斯坦福大学的CS193P课程中,MVC模式被深入讲解,并以...

    view-full-Screen.rar_full

    6. **处理退出全屏**: 为了给用户提供方便的退出途径,通常需要监听键盘事件(如ESC键)或者触摸事件(如边缘滑动),并相应地调用退出全屏的API,如`exitFullscreen()`。 7. **注意事项**: 实现全屏时要考虑不同...

    基于java的2048游戏设计

    2048游戏源于Gabriele Cirulli在GitHub上的开源版本,灵感来源于《1024》和《小3传奇》,后来被广泛移植到多个平台,包括iOS和Android,产生了各种衍生版本,如《2048六边形》、《挑战2048》等。 **需求分析** 1. *...

    java swing模拟键盘

    9. **显示和运行**:最后,记得调用`frame.setVisible(true)`来显示你的模拟键盘窗口,并且保持程序运行(通常通过`frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)`来设置退出程序的逻辑)。 在开发过程中...

    斯坦福大学iPhone开发教程2010年.Lecture.4

    本课程主要讲解了iPhone应用开发中的基础概念和技术,包括应用生命周期、模型视图控制器(MVC)设计模式、界面构建器和Nib文件、控件及目标-动作机制等内容。以下是针对这些知识点的详细介绍: ### 一、应用生命...

    hyc.rar_qt各个类说明

    QT库采用C++编写,支持多种操作系统,如Windows、Linux、macOS、Android和iOS。"hyc.rar_qt各个类说明"这个压缩包文件显然包含了关于QT库各个类的详细解释,这对于理解和使用QT进行开发至关重要。 在QT库中,有许多...

    Appium爬虫, 机器学习票房预测, Tkinter界面实现.zip

    通过Tkinter,开发者可以设计出具有窗口、按钮、文本框等组件的应用程序。实现Tkinter界面的基本步骤如下: 1. 导入Tkinter模块:在Python代码中引入Tkinter库,创建顶级窗口对象。 2. 设计布局:定义窗口的大小、...

    JAVA上百实例源码以及开源项目源代码

    多人聊天室 3个目标文件 第一步:运行ServerData.java 启动服务器,然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本...

    milliseconds:用户体验设计师的简单毫秒计时器

    毫秒计时器的实现基于 Swift 语言,Swift 是苹果公司推出的一种现代化、安全且性能强大的编程语言,广泛应用于 iOS、macOS、watchOS 和 tvOS 的开发。Swift 的语法简洁明了,同时提供了丰富的库支持,使得开发者可以...

Global site tag (gtag.js) - Google Analytics