在Xcode以及Interface Builder下简单使用Cocoa
下面写下建一个简单的程序,来说明如何使用macintosh的IDE 中的Xcode以及Interface Builder 做简单的Cocoa开发,为初学者学习
程序功能是把一个text里的数字复制到一个lable里
1.创建项目:
双击Xcode程序图标
如果是第一次打开会出现欢迎界面,可以查看如何操作,可以把它关了。
File -> Create Project 或:shift+command + N
Mac OS X -> Application -> Cocoa Application -> choose
(save as 处输入项目名称)MyTest -> (Where 处输入项目文件保存路径) ->Save
2.创建类:
(刚建的项目名称)MyTest -> Classes
File -> Create File 或:command + N
iPhone OS -> Cocoa Touch Class -> Objective-C Class
(Subclass of 中选)NSObject -> Next
(File Name 输入要添加的文件名)FileTest.m -> (选中)Also create "FileTest.h"
(Location 输入文件的位置,可以不在项目文件夹下) -> (Add to Project 处选择刚建的项目)MyTest
(Targets 中选中项目)Mytest -> Finish
3.创建类中元素:
Cocoa语言中头文件称呼用interface files,代码文件称为implementation files
返回Xcode 界面 -> Classes -> FileTest.h(刚建类的头文件)
在FileTest中输入一个变量:numberGet,numberSet
在括号外,@end命令前输入方法:CopyNumberFunction
保存文件(command + s)
本例结果是这样:
#import <Foundation/Foundation.h>
@interface FileTest : NSObject {
IBOutlet id numberGet;
IBOutlet id numberSet;
}
-(IBAction) CopyNumberFunction:(id)sender;
@end
4.创建UI界面:
返回Xcode界面 -> Resources -> (双击) MainMenu.xib(English)
此时已打开 interface Builder环境,此时可以看到一个window,如果没有双击MainMenu.xil(English)中的Window(Window)
Tool -> Library(里面是所有Xcode的控件)
(从Cocoa选项中)托出一个Text field,Lable和Push Button(双击可以改名称)到window
Tool -> Inspector(用来修改和查看选控件及其它对象的属性)
5.绑定界面控件跟类元素:
Tool -> Library -> Cocoa中选 中Object 拖到 MainMenu.xil(English)窗口
Tool ->Identity Inspector -> 选中MainMenu.xil(English)中刚加的Object
class 中输入或选择(刚建的类)FileTest ,此时Class Action 和 Class Outlets 中就有刚建的类中的方法跟变量
关闭Identity窗口
(变量绑定)
进入MainMenu.xib(English)窗口 -> control + 点击(刚加入的Object)File Test -> 拖动到Window窗口(刚建的UI界面)对应的控件上
{在拖动过程会有一个点在MainMenu.xil(English)窗口中并有一条线跟着拉出来,到了Text field控件后会显示Text field,放开鼠标会出现
FileTest类中的变量,也只会出现变量,选择要绑定到这个控件变量即可}
(方法绑定)
方法绑定跟变量绑定类似,只是需要反过来做,选中(按着Control)要绑定的控件,此处 Button -> 拖到 MainMenu.xib(English)窗口
里找到File Test,点击相应要绑定的方法
6.方法实现:
返回Xcode 界面 -> Classes -> FileTest.m(刚建的类的源文件)
在FileTest中输入相应实现代码即可
本例结果是这样:
#import "FileTest.h"
@implementation FileTest
-(IBAction)CopyNumberFunction:(id)sender
{
float num11,num22;
num11=[numberGet floatValue];
num22=num11;
[numberSet setFloatValue:num22];
}
@end
7.执行:
点击Build或Build and Go 或通过菜单中Go里的项目
但是要注意在代码中的内容要用英文半码,如:把半角等号写成Utf-8的全角就会编译出错。
转载于:https://www.cnblogs.com/sesexxoo/archive/2011/09/22/6190135.html
在Xcode以及Interface Builder下简单使用Cocoa相关推荐
- 【转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
原文网址:http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式 ...
- iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
原文链接:http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式 ...
- Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式的前世今生.本篇文章将详细介绍如何使用自动布局实现不同屏幕尺寸的适配. 添加自动布局约束(下文简称约束)有以下三种方 ...
- iOS开发-Interface Builder的前世今生
Interface Builder,是用于苹果公司Mac OS X操作系统的软件开发程序,Xcode套件的一部分,于1988年创立.它的创造者Jean-Marie Hullot自称是"一个热 ...
- Xcode 6 Bug:Interface Builder文件中的未知类
本文翻译自:Xcode 6 Bug: Unknown class in Interface Builder file I upgraded to Xcode 6 beta 4 and now my A ...
- ***Xcode Interface Builder或Storyboard中可建立那两种连接?
在Xcode Interface Builder或Storyboard中,可建立到输出口(IBOutlet)和操作(方法,IBAction)的连接. IBOutlet are for output C ...
- 《iOS 9 开发指南》——第6章,第6.4节 Interface Builder中的故事板——Storyboarding...
本节书摘来自异步社区<iOS 9 开发指南>一书中的第6章,第6.4节 Interface Builder中的故事板--Storyboarding,作者 管蕾,更多章节内容可以访问云栖社区 ...
- Interface Builder nib2objc ibtool
做iphone开发就需要接触其中的xib文件.Interface Builder(IB)是Mac OS X平台下用于设计和测试用户界面(GUI)的应用程序,可以很直观的设计图形界面.实际上Mac OS ...
- 【Xamarin挖墙脚系列:代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧(转)】...
正愁如何选择构建项目中的视图呢,现在官方推荐画板 Storybord...但是好像 xib貌似更胜一筹.以前的老棒子总喜欢装吊,用代码写....用代码堆一个HTML页面不知道你们尝试过没有.等页面做出 ...
最新文章
- 女生参加web前端培训压力大吗
- Android 截屏并写入SD卡中
- 10g 中RETENTION GUARANTEE 的作用
- 05 Python 并发编程(管道,事件,信号量,进程池)
- Druid 配置_StatViewServlet配置
- equals和hashCode
- .NET Core IdentityServer4实战 第Ⅳ章-集成密码登陆模式
- CLI下的网页浏览器之二——Lynx
- anaconda中怎么sh_【好工具】 深度学习炼丹,你怎么能少了这款工具!JupyterLab 远程访问指南...
- 癌症精准医疗上市公司泛生子基因 - 内推(名额有限)
- Unity中的单例方法
- Apache Zookeeper 集群环境搭建
- arm 架构_ARM推出性能更强A78C架构,服务笔记本产品
- cobbler高可用方案
- java上下左右_上下左右代替maquee的滚动代码
- Pylab Plotting
- 公司招了个漂亮女程序员是种什么样的体验?
- VUE仿知乎网站(三)首页主体部分开发
- 苹果手机屏幕上的圆点如何设置呢?
- Spark中distinct、reduceByKey和groupByKey的区别与取舍
热门文章
- UI框架-JQuery Smart / 淘宝JS库 KISSY UI
- [转载]Informix平安特征庇护数据的详细方法
- C++ Primer Plus学习(十)——类和对象
- Ubuntu下添加boost库
- stl之string类用法详细总结
- VScode编辑同步Markdown文档到印象笔记
- 895计算机专业基础,2017北京工业大学895计算机学科专业基础考研入学考试大纲...
- python各个关键词的意思_想学好Python,你必须了解Python中的35个关键词
- 电脑位数怎么看_怎么用电脑播放4K视频?怎么用电脑看4K电影? 附带详细教程...
- android开发 修改标题栏背景_Android哆啦A梦调试工具体验