我想检测用户拥有的iDevice
,然后将device name
放入UILabel
。使用以下代码,应用程序仅检测iPhone / iPad / iPod我喜欢iPhone 4 / iPod 3G / iPad 1G ...或确切名称(iPhone 3.1 / iPod 2.0 / iPad 2.4)......
这是我的代码:
iDevice.text = [UIDevice currentDevice]. localizedModel;
我试过这个
iDevice.text = [UIDevice currentDevice]. model;
但是小巷它说iPhone和我喜欢iPhone 3.1
答案 0 :(得分:2)
好的,所以听起来你想要使用的方法是使用Erica Sadun创建的类别https://github.com/erica/uidevice-extension/
在我开始使用它之前,我会传递一些关于类别的信息。 Apple提供了有关类别的文档http://developer.apple.com/library/ios/#documentation/cocoa/conceptual/objectivec/chapters/occategories.html
您可以通过在接口文件中声明方法来向类添加方法 在类别名称下并在实现文件中定义它们 同名的。类别名称表示方法是 添加到其他地方声明的类,而不是新类。你不能, 但是,使用类别向a添加其他实例变量 类。
从github下载项目,并将这两个文件添加到您的项目中:
UIDevice-Hardware.h
UIDevice-Hardware.m
您将使用的方法之一是:
- (NSString *) platform;
- (NSString *) hwmodel;
- (NSUInteger) platformType;
- (NSString *) platformString;
因此,您需要将UIDevice-Hardware.h导入到要使用该方法的文件中。您可以使用该方法返回NSString值并将值赋给标签,因此您可以执行与
类似的操作mylabel.text = [[UIDevice currentDevice] platformString]
这是另一个对类别有很好介绍的链接:http://mobile.tutsplus.com/tutorials/iphone/objective-c-categories/
编辑:使用设备模拟器进行屏幕截图:
注意:我的@interface行上面也有#import "UIDevice-Hardware.h"
。