《深入浅出iPhone/iPad开发(第2版)》——替换按键的文本

简介:

本节书摘来自异步社区《深入浅出iPhone/iPad开发(第2版)》一书中的替换按键的文本,作者 【美】Dan Pilone , Tracey Pilone,更多章节内容可以访问云栖社区“异步社区”公众号查看

替换按键的文本
深入浅出iPhone/iPad开发(第2版)
你知道,按键需要一个IBAction去响应按键按下,因此,我们在实现文件中编写按键应该怎么做。但是按键应该怎么做呢?

我们需要去替换按键中的文本来提供一个答案。因此,这意味着我们需要一些方式达到返回“out”到界面,并改变标签的文本。我们将使用一个IBOutlet来实现。


d2701dbe68bb26546db492922ba353ca763f84d0

IBActions和IBOutlets是对理解如何使用控件来工作的关键,我们将在下一章中对它们进行细致的讨论。目前,只要记住动作用于在界面中对事件做出反应,出口用于从代码中弹出以改变界面。
这里没有愚蠢的问题
问:如果我不在.h文件中实现一切会发生什么?

答:在编译时,Xcode会抱怨。它将检查你是否完全实现了在相关头文件中声明的类。如果它认为并非如此,你就会被给予一个警告,告诉你所发生的。如果你需要该代码去支持什么别的事情,那么它将在运行时崩溃。

问:框架究竟是什么?它们与库是同一个东西吗?

答:它们真的很相似。它们在共享、编译代码方面都很像库,但是它们还可以与图片、头文件、文档等进行绑定。

问:我必须要使用界面构建器创建我的视图吗?

答:不用。你可以做任何你想要做的事情,无论是在界面构建器中,还是在代码中(等等一些)。然而,使用界面构建器并不是意味着你就不能使用代码来完成一些事情。由于界面构建器会为你提供更好的图形化的方式设计你的视图,大多数的应用程序至少都有一些自己的UI内置在界面构建器中,然后再将代码加入或者调整。

问:我必须用Objective-C编写我的应用程序吗?

答:早期版本的iOS开发协议需要为一切将通过iTunes App Store进行发布的应用程序使用Objective-C。苹果公司后来放宽了这一要求,开放使用其他工具或语言的可能性。尽管如此,几乎所有关于iOS的开发,都会假设你使用的是Objective-C。所有的基本框架都用Objective-C编写(或者编写用来为它工作),文档和示例代码使用它,而工具套件围绕它建立。基本上,如果你想要认真编写原生应用程序,你最好还是学习Objective-C,并开始用它编写代码。

问:我能将我编写的应用程序给我的朋友们吗?

答:能也不能。首先,如果你想要将应用程序放入任何人的真实设备上(包括你自己的),你需要注册付费苹果iOS开发项目。一旦你这么做了,就可以注册最多100部设备,并安装你的应用程序到它们之上。然而,以这样的方式去获得你的应用程序并不是很棒的方式,因为苹果公司限制了你通过这种方式最多能够注册的设备数量。它对于测试你的应用程序很好,但并不是与别人分享你的应用程序的很好的方式。

最好的方式是提交你的应用程序到iTunes App Store。你可以选择以免费或者付费的方式发布你的应用程序,但是通过iTunes App Store发布,你将让你的应用程序面向全世界(而且可能还可以挣些钱!)。我们将在本书的稍后部分更多地讨论发布应用程序的内容。

最后,还有一种企业版开发项目你可以加入,让你可以不使用App Store而在内部发布应用程序。这种方式有用,但是会比普通项目花费更多。

问:我必须使用IDE吗?我真的是一名命令行开发者。

答:从技术上讲,不用,你没必要使用XcodeaIDE进行直接开发。然而,IDE使iOS开发变得如此简单,你真的应该问问自己,你有什么更好的理由不用它,特别是它在真实设备或者模拟器上测试与Xcode的结合是如此紧密。这本书使用的XcodeaIDE同苹果其他开发工具一样,而且我们鼓励你至少在放弃它们之前尝试一下。对于自动化构建的事物或者自动化测试,SDK伴随的命令行建立工具叫做xcodebuild,它可以像Xcode那样创建你的应用程序,但是你很可能仍然希望用Xcode来进行实际开发。

问:我能够为iPhone开发一款应用程序,然后再为其他手机(如WindowsaMobile或者Android手机)重新构建这个应用程序吗?

答:一个词,不能。当你为iPhone开发时,你使用的是苹果的iOS框架,如Cocoa Touch,以及Objective-C等,而这些都不能用在其他设备上。


2864af7438d8bfc3f94c2c3900084a73b2c0fa08

下面是当按键被点击时的代码。添加粗体显示的代码到iDecideViewController.h和iDecideViewController.m文件中。我们创建3样东西:UILabel属性,用于回应按键按下的IBAction,以及用于当按键被按下后改变标签的IBOutlet。


65750555f06314073964bd2d2b6128336f4bab9f

这里的代码从之前iDecideViewController.h和iDecideViewController.m的完整文件中得来。


018674e5a753c17bc590f7dbb7469cb9ae341bd0
目录
打赏
0
0
0
0
1815
分享
相关文章
iPhone 屏幕尺寸和开发适配
【10月更文挑战第23天】iPhone 的屏幕尺寸变化给开发者带来了一定的挑战,但也为创新提供了机遇。通过深入了解不同屏幕尺寸的特点,遵循适配原则和策略,运用合适的技巧和方法,我们能够为用户提供在不同 iPhone 机型上都具有良好体验的应用。在未来,随着技术的不断进步,我们还需要持续学习和适应,以满足用户对优质应用体验的不断追求。
响应式设计在 iPhone 开发适配中的具体应用
【10月更文挑战第23天】响应式设计在 iPhone 开发适配中扮演着至关重要的角色,它能够帮助我们打造出适应不同屏幕尺寸和用户需求的高质量应用。通过合理运用响应式设计的原则和方法,我们可以在提供良好用户体验的同时,提高开发效率和应用的可维护性。
Chatgpt教你开发iPhone风格计算器,Python代码实现
Chatgpt教你开发iPhone风格计算器,Python代码实现
73 0
We discovered one or more bugs in your app when reviewed on iPhone and iPad running iOS 14.1
We discovered one or more bugs in your app when reviewed on iPhone and iPad running iOS 14.1
100 0
macOS Catalina(10.15)如何访问iPhone(Ipad)的应用文档文件
macOS Catalina(10.15)如何访问iPhone(Ipad)的应用文档文件
286 0