让我们创建一个密码iPhone应用程序(第1部分)

大家好。藤田裕太(@HofuCamera)是。

这次,我想开发一个“密码iPhone应用程序”。

该应用程序已预先设置了密码,如果密码正确,则会显示下一个屏幕,如果密码不同,则将维持现状。

这次,我想重点介绍如何在应用程序中保存数据以及如何使用代码进行屏幕转换。创建此应用后,您将可以设置一种将数据半永久性地存储在应用中的方式,例如密码!

另外,我认为您将能够实际更改为原始应用程序并制作各种应用程序应用程序,因此让我们来吧!

如果尚未构建Xcode环境,请单击此处

<<到最后一次的路线>>


让我们为iPhone应用程序开发准备环境
开发iPhone应用程序需要什么
让我们开发没有程序的红卡iPhone应用程序
让我们开发一个没有程序的彩色卡片应用程序
让我们开发您最喜欢的网站集应用
让我们开发一个笔记邮件应用程序(第1部分)
让我们开发一个笔记邮件应用程序(第2部分)
让我们开发一个在10秒内停止运行的“即时iPhone应用程序”(第1部分)
让我们开发一款仅需10秒即可停止运行的游戏,只需一次使用时间(第2部分)
让我们开发一个谎言电话应用


建立专案

如何建立专案这里描述于。

这次,我将项目名称确定为密码。

接下来,我认为这里是写“设备方向”的地方。在创建iPhone或iPad应用程序时,这里是设置屏幕的地方,例如“是否是仅支持纵向,仅支持横向或仅支持纵向的应用程序”。

xcode_web3
这次我只想支持垂直,所以取消选中下面的两个。确保仅选中“肖像”。
xcode_web4

排列屏幕和文件

准备屏幕

如果单击情节提要上屏幕的顶部,则会在右侧看到一个名为“大小”的区域。
单击此处,然后选择“ iPhone 4.7英寸”。

每个屏幕尺寸都有其含义。
该列表如下所述。这次,我想创建一个与“ iPhone 6”大小相对应的应用程序。

  • iPhone6Plus→iPhone5.5英寸
  • iPhone6→iPhone4.7英寸
  • iPhone5→iPhone4英寸
  • iPhone4→iPhone3.5英寸

准备屏幕

屏幕设计

接下来吧接下来,我们将设计屏幕。

左侧有一个名为“ Main.storyboard”的部分,因此单击它。在这里主要是您可以看到整个视图的地方,可以在这里直观地放置屏幕过渡图(例如屏幕的显示顺序)和零件(按钮,标签等)。
xcode_pass1
请继续注意红色部分。
xcode_pass2
另外,您实际上可以自己设计Main.storyboard,因此让我们对其进行设计。
接下来,单击屏幕上的红色部分,然后在右侧更改大小。
这次我想使其与iPhone 6兼容

iPhone4.7英寸

并设置。
xcode_pass3
让我们继续。

在右侧的parts列中,添加一个视图控制器和一个TextField。

对于TextField,将其放在第一个屏幕上。
xcode_pass4
因为它很难区分,所以我想更改屏幕颜色。
单击屏幕后,将颜色更改为黑色。
xcode_pass5
接下来,在新添加的屏幕上设置程序文件。
选择文件→新建→文件,如下所示。
xcode_pass6
然后,在单击标记为CocoaTouch的部分之后,您将到达确定名称的地方,因此
OKViewContoller我会命名。
我能够这样设置。
xcode_pass7
接下来,我想使屏幕与程序匹配。
在右侧的红色部分中设置OKViewController。
xcode_pass8
这次,我想用代码进行屏幕转换,因此请按如下所示设置ID。
我在这里将其设置为“ ok”。
xcode_pass9
然后,按住控制键并将箭头扩展到屏幕,如下所示。
xcode_pass10
此外,选择“模态呈现”以更改屏幕,情节提要上的设置已完成。
xcode_pass11
这样的箭出来了。
xcode_pass12
接下来,在程序屏幕上反映文本字段。
单击文本字段,按住Control键并将其拖放到屏幕上。
xcode_pass13
将其命名为passWord。
xcode_pass14
这样就完成了对程序的识别。
xcode_pass15
接下来,我们将创建下一个按钮。
从右侧将Button拖放到屏幕上,双击该按钮,然后将其命名为Next。
xcode_pass16
此外,我想在按下“下一步”按钮后创建一个地方来描述我要执行的过程,因此让程序识别它。

按住控制键并向程序拖放。接下来命名即可完成。

xcode_pass18

什么在应用程序中保存数据?

关于NSUserDefaults

接下来,我将解释如何在应用程序中保存数据。

在应用程序中保存数据时,通常使用名为NSUserDefaults的名称。 NSUserDefaults确定一个值(在这种情况下为预先确定的密码)中的键(例如程序识别的ID)并保存它。

同样,在检索(引用)值时,将依赖此键。

首先,声明如下,以便可以使用NSUserDefaults。
xcode_pass19

然后初始化它。

初始化意味着我们将从现在开始使用此NSUserDefaults。
xcode_pass20
另外,保存一个称为aiueo的预定密码和一个名为password的密钥。

现在,当屏幕打开时,将设置密码aiueo。
xcode_pass21
这次,当您在文本字段中输入一个字符并按Next(下一步)按钮时,如果它是aiueo,它将进入下一个屏幕,否则它将什么也不做。
xcode_pass22
按下按钮时反应的地方

if ([passWord.text isEqualToString:@"aiueo"]) {

}

它被描述为。
这被翻译成日语
如果([如果屏幕上名为passWord的文本字段中的文本是aiueo]){

}
代表着 · · ·

由于我想在aiueo时进行屏幕转换,因此我将合并转换目标程序。接下来,使转换目标程序成为一个变量,以识别它是id为ok的地方。

xcode_pass23
接下来,使转换目标程序成为一个变量,以识别它是id为ok的地方。
xcode_pass25
最后,您可以在这一行上显示屏幕。
xcode_pass26
就这样!

让我们来看看模拟器

左上方▶按下按钮以启动模拟器。

键入aiueo并按“下一步”按钮,当出现白屏时,您就完成了。
xcode_pass27
另外,如果在输入aiueo以外的字符时屏幕没有转变为白屏,那就大功告成!
xcode_pass29

最后

它怎么样?

一旦此NSUserdefaults可用,便可以捕获各种值并将其放置在应用程序中。

另外,除非您执行特殊操作(例如删除应用程序),否则该值将永久保留。它可以在各个地方使用,因此在创建自己的应用程序时请参考它!下次,我想在SNS上通知您已超出此密码。

撰写本文的人

yuta

从零开始创建专业的Instagram风格图像处理iPhone应用程序 特別クーポン配布中! 詳しくは从这里! エンジニアでプロデューサー ピーターティールが大好きです! Twitter:藤井裕太 質問はお気軽にどうぞ!