【PickerView案例10-国旗选择界面02 Objective-C预言】

这篇具有很好参考价值的文章主要介绍了【PickerView案例10-国旗选择界面02 Objective-C预言】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、好了,我们继续来实现这个国旗选择界面:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

1.它的界面里面,是不是很简单,就一个UIPickerView,就完事儿了

然后,显示的每一行内容呢,

1)一个文字Label

2)一个图片

那大家应该有意识,它返回的应该是一个View,对吧,

代理方法里面,有一个返回View的,viewForRow:

viewForRowInComponent:

2.然后呢,我们呢,就新建了一个项目,

然后呢,我把这个项目打开,

1)搭建界面:一个PickerView,就完事儿了

2)加载数据:把这个03flags.plist,加载进来,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

3)还有一个:我们的图片资源,也给它放进来了,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

这么多国旗图片,

4)然后呢,再来看一下这个plist啊

国旗这个plist里面,也是,一个数组,包了几个字典,对吧,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

也可以字典转模型,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

5)回到Controller里面,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

懒加载

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

关起来了,不再看了,

然后呢,

6)接下来,设置它的数据源、代理对象、

遵守对应的协议,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

实现相应的方法:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

7)它的组数,是多少呢:直接就是1组,

8)它的行号呢:有多少个国家模型,就有多少行啊,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

9)那最后,我们说:需要返回一个UIView,

pickerView:它是不是有一个viewForRow:方法

有人说,这些方法太多了,我记不住,记不住怎么办呢,也不用去记啊,我们只需要记住它的UIPickerView的头文件,去看

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

点这个:UIPickerView

或者点它的:DataSource、Delegate

都可以

没有必要死记硬背啊,

我们只需要了解这个思路,

这个思路就可以了:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

2.那最后,我们说,返回、每一行返回什么view的话,

是不是根据tableView,去套的,

有印象吧,前面我们在写tableView的时候,

每一行返回什么样的cell,

那是怎么做的,

1)第一步:创建Cell

2)第二步:给Cell赋值、设置数据、

3)第三部:返回Cell

那我们这个View,也是一样的:

1)第一步:创建View

2)第二步:给View设置数据

3)第三步:返回View

有人说:我们是不是可以创建一个xib

这是一个xib、左边一个Label:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

右边儿一个ImageView:显示一个图片,对吧,

然后呢,最后是不是可以给它设置数据,最后返回View:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

最关键的就是这一块儿、其他都是一样一样的:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

3.好,大家说,怎么办:

1)第一步:是干嘛,创建View,创建View的话,你怎么创建呢,

我们这个View,是什么,我们要给它做的,是不是一个xib

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

那怎么办

是不是先创建一个xib

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

然后呢,command + N、

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

User Interface:View

直接带一个View进来:

然后呢,Name:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

Name:HMFlagView.xib

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

现在呢,我们这个xib有了:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

放上来

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

这样的话,我还是加一个Group:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

1)Group Name:View,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

2)Group Name:Controller,

3)Group Name:Other,

4)Group Name:Model,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

这两个是不是我们的模型:HMFlag.h、HMFlag.m

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

AppDelegate.h、AppDelegate.m、这两个是不是放在Other里面

控制器里面,按Shift、把这三个:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

放到控制器里面

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

有的老师是不是把Storyboard放到View里面,

HMFlagView.xib:这个放到View里面

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

哦了:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

那这个文件放置呢,你自己根据你个人习惯放置,但是其他的基本上都是这么一个结构

那下面这三个,放到:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

放到SupportingFiles里面

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

4.好,那我们继续,现在这个xib有了

然后呢,是不是把它改一改:

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

我们先把它约束加一下:这个Size:改成freedom

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos

1)Size:改成freedom,是不是可以修改它的大小,

2)然后,这个Status Bar:改成None,

【PickerView案例10-国旗选择界面02 Objective-C预言】,Objective-C,objective-c,开发语言,macos文章来源地址https://www.toymoban.com/news/detail-730269.html

电池是

到了这里,关于【PickerView案例10-国旗选择界面02 Objective-C预言】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Objective-C学习笔记(ARC,分类,延展)4.10

    1.自动释放池@autoreleasepool: 存入到自动释放池的对象,在自动释放池销毁时,会自动调用池内所有对象的release方法。调用autorelease方法将对象放入自动释放池。     Person *p1 = [ [ [ Person alloc ] init ] autorelease]; 2.在类方法里写一个同名的方法,用于创造对象。 (+)instancetype pers

    2024年04月17日
    浏览(41)
  • 【Effective Objective - C】—— 熟悉Objective-C

    Objective-C通过一套全新语法,在C语言基础上添加了面向对象特性。Objective-C的语法中频繁使用方括号,而且不吝于写出极长的方法名,这通常令许多人觉得此语言较为冗长。其实这样写出来的代码十分易读,只是C++或Java程序员不太能适应。 Objective-C语言学起来很快,但有很

    2024年01月16日
    浏览(47)
  • objective-c 基础学习

    目录 第一节:OC 介绍 ​​第二节:Fundation 框架 ​第三节:NSLog 相对于print 的增强 ​第四节:NSString ​第五节:oc新增数据类型 第六节: 类和对象 ​类的方法的声明与实现 ​第七节:类和对象的存储 第八节:nil 与 NULL 第九节:分组导航标记#pragma mark ​第十节:方法与函

    2024年02月07日
    浏览(42)
  • 第一章 熟悉Objective-C

    Objective—C语言是由Smalltalk演化而来,后者是消息型语言的鼻祖,所以该语言使用的“消息结构”而非“函数调用”。 1. 消息和函数调用之间的区别 关键区别在于: 使用消息结构的语言,其运行所应执行的代码由运行环境来决定;而使用函数调用的语言,则由编译器决定。

    2024年01月18日
    浏览(40)
  • 【KVC补充 Objective-C语言】

    2024年02月15日
    浏览(42)
  • Effective Objective-C 学习(四)

    在执行后台任务时,GCD 并不一定是最佳方式。还有一种技术叫做 NSOperationQueue,它虽然与 GCD 不同,但是却与之相关,开发者可以把操作以 NSOperation 子类的形式放在队列中,而这些操作也能够并发执行。 GCD是纯C的API,而NSOperationQueue是Objective-C的对象。这意味着使用GCD时,任

    2024年02月19日
    浏览(40)
  • Effective Objective-C 学习(二)

    “属性”(property)是 Objective-C 的一项特性,用于封装对象中的数据。Objective-C 对象通常会把其所需的数据保存为各种实例变量。实例变量一般通过“存取方法”来访问。其中,“获取方法”(getter)用于读取变量值,而“设置方法”(setter)用于写入变量值。开发者可以令

    2024年02月20日
    浏览(48)
  • Objective-C日期NSDate使用

    2024年01月21日
    浏览(50)
  • Effective Objective-C 学习(三)

    Objective-C 使用引用计数来管理内存:每个对象都有个可以递增或递减的计数器。如果想使某个对象继续存活,那就递增其引用计数:用完了之后,就递减其计数。计数变为 0时,就可以把它销毁。 在ARC中,所有与引用计数有关的方法都无法编译(由于 ARC 会在编译时自动插入

    2024年02月22日
    浏览(49)
  • use gnustep objective-c

    专注于概念,而不是迷失在语言技术细节中 编程语言的目的是成为一个更好的程序员; 也就是说,在设计和实现新系统以及维护旧系统方面变得更加有效 header preprocess interface implementation method variable declare and expression comment basic integer set and float set enum type void type derive type incl

    2024年02月14日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包