Xcode下熟练storyboard、xib等界面开发(新手)

Storyboard 简称 SB  ,这名字好傻的样子(-.-),下面都统称之为sb文件

其实Storyboard并不像名字那样那样傻,反而他十分的高级且智能(至少我现在是这样觉得的)

Stotyboard是在MAC或IOS系统上进行图形界面开发,而且IOS上居多,MAC资料较少所以很少有新手在MAC能马上入手,但其实两者的开发流程类似是差不多的。

XIB和SB本质都是将可视化的窗口转换成代码去创建控件,只不过XIB是轻量级的一般用来描述局部的控件,而SB是多个试图界面并且可以来实现整个项目的跳转。

故现在简单介绍一下MAC上Storyboard的开发和使用,以备新手学习。

1.新建一个工程

选择macOS中的Cocoa App,点击next

随便取一个名字,选择Objective-C并且勾选Use Storyboards

 

建立完成之后,可以看到有如下这些文件

其中,有一个Main.storyboard这个是我们的第一个SB文件,我们所有视图的UI界面都在这里设置, 其中AppDelegate里面有程序的入口用于初始化,而AppDelegate是在不断循环的程序和我们的代码之间进行通讯,AppDelegate对象是作为Application对象的委托属性还声明了一个NSwindow*window 的XIB文件的IBOutlet输出变量 这就让AppDelegate可以直接对window做一些操作 比如说windows的背景颜色等。ViewController就是UI界面的实现,所有的控件的具体实现都可以放在这里。Assets主要对工程中使用的图片资源进行统一管理,info里面是工程的配置文件,主要是对工程的一些配置进行设置。

点击Main.storyboard进去,进入主界面进行编辑

可以看到有这三个玩意:

1.最顶上的那个菜单栏叫Main Menu,就是我们程序运行之后电脑屏幕顶上的那个菜单栏。

2.中间的那个是NSWindow,可以用来设置背景颜色什么的,左边的箭头表示这个Window是当前storyboard的初始化Window。

3.底下的是一个NSViewcontroller,我们主要的界面显示都是通过设置这个东西来完成的,上面的箭头表示我们这个NSViewcontroller是属于一个NSWindow,依附在之上。

我们点击Window,右边有很多设置,具体自己可以研究一下,我们先修改Window的标题,

去Title那一栏,把Window改成你想要的标题。如:Testsb之类的...

 然后点击下面那张图中的蓝色方块按钮,就是Viewcontroller的类按钮,右边有一个Custom Class把class绑定工程里面对应的类文件。

 然后我们点击右上角那个⭕️按钮,那个按钮就是控件大全。 

 我们拖动一个Lable上来,并设置一些属性

再拖动一个push button进来,Vcl界面如下

 

这个时候点击编译运行,界面是这样的

 

点击goto好像也没有反应,那是为啥呢? ,因为我们没有写方法去实现这个按钮

下面我们实现push button这个按钮,弹出另一个视图。

新建一个Viewcontroller,快捷键command+N,选择macOS->Cocoa Class,点Next

下面有个勾选是否选择创建一个XIB到接口,这里我们用的SB,所以就不勾选上

我们在刚刚创造的.m文件中加入这行代码,这里viewDidLoad的方法是每次懒加载此次界面的时候第一个运行的方法,每次必运行。 可以运行看一下。

现在我们要把点击按钮的动作变成弹出Myviewcontroller这个界面

具体分为三步:

1.在SB里面创建视图控制器(1)(空间搜索View第一个就是的拖进去 ),并关联到类2)(custom class 设置2),设置SB id3)(在Identity里面设置Storyboard ID)。提示:第1 步是把视图控制器拖到SB里面。

 2.实现按钮事件,点击右上角那两个⭕️的按钮可以实现两个界面左边为我们的SB文件,右边选择当前控件类的.h文件,然后按住control点击按钮,把它拖到右边的interface下面。

 

这里需要设置一些按钮的属性,connectlon我们选择Acttion,设置一个方法名字,然后点几connect,我们就已经绑定好啦。然后再科普一下Action和Outlet的区别:

outlet:输出口

可以理解为一个指针指向了nib中的控件对象,我们可以通过outlet来操作这个控件。

action:

​​​​​​​操作一个控件后这个控件执行的方法。

 3.设置按钮事件里面具体内容,我们往.m文件里面写入一下代码

添加之后就可以运行了,我们运行一下看一下效果

 

之后我们再讲讲XIB怎么玩, 主要是协议和委托代理

--作者小白一名,此文章仅供参考,有问题大佬可以联系我。

 

 

 

 

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值