iOS 6编程-在iPhone和iPad上运行的通用应用程序
2012-10-17 16:02
453 查看
使用Xcode提供的Universal选项,可以创建通用应用程序。通用应用程序有两个storyboard文件,这点在之前的范例App都没有创建过。针对不同的设备,创建的两个storyboard文件分别为:MainStoryboard_iPhone.storyboard和MainStoryboard_iPad.storyboard。
可以使用Xcode中的Single View Application 模板创建一个简单的、通用的App。项目名称为UniversalApp,类前缀为Uni。
生成的Xcode项目文件中,我们发现有2个Storyboard文件。
具体而言,有2种方法来实现通用应用程序。
第一种方法是:2个Storyboard文件,一个视图控制器文件,这个一般适用于iPhone和iPad界面和功能差异不大的情况。
第二种方法是:2个Storyboard文件,二个视图控制器文件,分别对应于不同的Storyboard中的视图。这样,每一个视图和视图控制器将完成不同,可以实现差异化功能,但是仍然可以在Xcode项目中创建一些独立的类或文件,实现共享业务逻辑代码。
先采用第一种方法,分别在2个storyboard中的视图中,添加在一个UILabel标签,并连接到UniViewController.h中输出口deviceType。
#import <UIKit/UIKit.h>
@interface UniViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *deviceType;
@end
两个视图由同一个视图控制器UniViewController进行管理。打开UniViewController.m文件,更新viewDidLoad方法。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.deviceType.text = [UIDevice currentDevice].model;
}
代码中UIDevice类的currentDevice方法获取指向当前设备的对象,访问其属性model,获得一个描述当前设备的NSString字符串对象。
代码很简单,我们现在运行UniversalApp程序,看看输出结果:
在iPhone 模拟器中的输出为:iPhone Simulator
在选择使用iPad Simulator模拟器,我们发现输出结果为:iPad Simulator
第二种方法的演示,包括本教程后续更详细内容及其范例App将收录在《一步一步学习iOS 6 编程》的最新版PDF文件中。
可以使用Xcode中的Single View Application 模板创建一个简单的、通用的App。项目名称为UniversalApp,类前缀为Uni。
生成的Xcode项目文件中,我们发现有2个Storyboard文件。
具体而言,有2种方法来实现通用应用程序。
第一种方法是:2个Storyboard文件,一个视图控制器文件,这个一般适用于iPhone和iPad界面和功能差异不大的情况。
第二种方法是:2个Storyboard文件,二个视图控制器文件,分别对应于不同的Storyboard中的视图。这样,每一个视图和视图控制器将完成不同,可以实现差异化功能,但是仍然可以在Xcode项目中创建一些独立的类或文件,实现共享业务逻辑代码。
先采用第一种方法,分别在2个storyboard中的视图中,添加在一个UILabel标签,并连接到UniViewController.h中输出口deviceType。
#import <UIKit/UIKit.h>
@interface UniViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *deviceType;
@end
两个视图由同一个视图控制器UniViewController进行管理。打开UniViewController.m文件,更新viewDidLoad方法。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.deviceType.text = [UIDevice currentDevice].model;
}
代码中UIDevice类的currentDevice方法获取指向当前设备的对象,访问其属性model,获得一个描述当前设备的NSString字符串对象。
代码很简单,我们现在运行UniversalApp程序,看看输出结果:
在iPhone 模拟器中的输出为:iPhone Simulator
在选择使用iPad Simulator模拟器,我们发现输出结果为:iPad Simulator
第二种方法的演示,包括本教程后续更详细内容及其范例App将收录在《一步一步学习iOS 6 编程》的最新版PDF文件中。
相关文章推荐
- 斯坦福大学公开课 iOS应用开发教程学习笔记(第七课)UIToolbar、iPad 和iPhone的通用程序
- iOS网络高级编程:iPhone和iPad的企业应用开发之错误处理
- ipad 如何将iphone应用程序运行在ipad中。
- IOS开发笔记-发布iphone/ipad应用程序被拒绝,如何解决
- iOS 7优化Non-Retina iPad运行iPhone应用显示效果
- ios(ipad,iphone)屏幕旋转检测通用方法
- iOS:界面适配(一)--Universal通用程序 iPhone、iPad适配(方法)
- iOS:界面适配(二)--Universal通用程序 iPhone、iPad适配(关于xib)
- iOS 6编程-如何iPhone/iPad 模拟器的主屏幕和锁定屏幕?
- ios 编程: ipad 和 iphone开发中使用 UIWebView 来播放视频的时候,在页面切换时 停止播放
- [ios]iPhone应用程序编程指南--窗口和视图
- iOS:界面适配(二)--Universal通用程序 iPhone、iPad适配(关于xib)
- IOS开发之Iphone和Ipad应用程序图标和启动动画
- 获取iOS程序之运行环境是iphone或ipad
- IOS编程浅蓝教程(二) HelloWrld! 建立你的第一个iPhone应用程序
- iOS网络高级编程:iPhone和iPad的企业应用开发之错误处理
- iOS:界面适配(一)--Universal通用程序 iPhone、iPad适配(方法)
- ios开发笔记:如何在iphone/ipad应用程序添加iAd
- iOS:界面适配(一)--Universal通用程序 iPhone、iPad适配(方法)
- ios开发笔记如何在iphone-and-ipad应用程序添加admob