`

一个细微的差别 loadNibNamed:owner:options:

阅读更多

loadNibNamed:owner:options: 这个函数会返回一个nib的数组。不过,在iPhone2.1包括以后的版本,这个数组的第一个元素,即nib[0]表示的就是除了File‘s Owner 和 File Responder后的第一个东西。在iPhon2.1之前的版本,nib[0]是File's Owner,nib[1]才是除了File‘s Owner 和 File Responder后的第一个东西。特别注意一下^_^

 

分享到:
评论
3 楼 lordhong 2009-04-01  
ankyhe 写道
lordhong 写道

所以要loop那个nib[]数组, 然后用isclasstype of来检测... APPLE真是挫~~~

不用这么麻烦,可以简单点,好象不同版本的iPhone SDK,定义个宏就OK了.


也对... 我对Obj-C,C,C++还是比较陌生的... 继续摸索
2 楼 ankyhe 2009-04-01  
lordhong 写道

所以要loop那个nib[]数组, 然后用isclasstype of来检测... APPLE真是挫~~~

不用这么麻烦,可以简单点,好象不同版本的iPhone SDK,定义个宏就OK了.
1 楼 lordhong 2009-03-26  
所以要loop那个nib[]数组, 然后用isclasstype of来检测... APPLE真是挫~~~

相关推荐

    ios-MCTableView.zip

    MCtCell * cell = [[[NSBundle mainBundle]loadNibNamed:@"Order" owner:self options:nil]objectAtIndex:0]; cell.title.text = @"区头"; MCtCell * cell1 = [[[NSBundle mainBundle]loadNibNamed:@...

    ios-datePickerView.zip

    self.datePicker =[[[NSBundle mainBundle] loadNibNamed:@"DatePickerView" owner:self options:0] lastObject]; self.datePicker.frame =CGRectMake(0, self.view.frame.size.height-260, self.view.frame.size...

    ios 一个窗口使用多个xib

    通常,owner是一个UIViewController的实例,因为它可以持有和管理这些UI元素。 为了在一个窗口中使用多个XIB,我们可以创建多个UIViewController的子类,每个子类对应一个XIB。每个XIB设计不同的视图层次,例如导航...

    ios-轮播图.zip

    self.homeHeaderView = [[[NSBundle mainBundle] loadNibNamed:@"HomeHeaderView" owner:self options:nil] firstObject]; self.tableView.tableHeaderView = self.homeHeaderView; self.homeHeaderView ....

    LoadNibViewDemo

    使用`NSBundle`的`loadNibNamed:owner:options:`方法可以加载XIB文件。这个方法会返回一个包含初始化后的对象数组,这些对象与XIB文件中定义的顶级对象相对应。例如,如果你在XIB文件中有一个UIViewController的...

    自定义UIView子类

    [[NSBundle mainBundle] loadNibNamed:@"JXCustomView" owner:self options:nil]; } return self; } ``` 3. 如果你还需要支持用代码创建实例,可以添加这个初始化方法: ```objc - (instancetype)initWithFrame:...

    iOS自定义控件开发梳理总结

    这通常通过`loadNibNamed:owner:options:`方法完成,将xib内容添加到父视图中。同样,可以通过暴露公共属性和方法来定制控件的行为。 无论选择哪种方式,自定义控件的关键在于理解其生命周期和布局机制。`...

    iphone_UI源代码 iphone_UI源代码

    源代码可能涉及到这些文件的加载和解析,如`loadNibNamed:owner:options:`方法的使用。 3. **UIKit框架**:UIKit是iOS UI开发的核心,包含了许多UI元素,如UIButton、UILabel、UIImageView等。源代码可能直接使用...

    使用framework实现动态模块更新

    `NSBundle`提供了一系列方法,如`loadNibNamed:owner:options:`和`loadLibraryAtPath:error:`,用于在运行时加载指定的资源或库。 2. **Category和Extension**:Objective-C的Category机制允许我们在不修改原有类...

    UIView_2_PDF:使用UIView或带有关联的XIB的UIView的PDF生成器

    描述 使用任何喜欢的方法来创建UIView对象,包括启用了自动布局和大小类的界面...UIView *pageOne = [[ NSBundle mainBundle ] loadNibNamed: @" NibNameOne " owner: self options: nil ].lastObject; UIView *pageTwo

    iOS通过xib自定义cell

    NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:self options:nil]; cell = nib.firstObject; } // 配置cell的内容 cell.titleLabel.text = @"标题"; cell.imageView.image = ...

    静态库中使用xib

    [NSBundle loadNibNamed:@"MyView" owner:self options:nil]; } ``` 或 ```swift @objc class MyClass: UIView { override init(frame: CGRect) { super.init(frame: frame) commonInit() } required ...

    ios7 Foundation框架文档

    - `-(id)loadNibNamed:(NSString *)nibNameOrNil owner:(nullable id)owner options:(nullable NSDictionary*,__kindof NS nibLoadingOptionKey *>)options`: 加载名为`nibNameOrNil`的Nib文件。 ##### 5. NSCache...

    LCNumberInputView:这是一个输入控件,让你输入整数或浮点数

    LCNumberInputControl *inputView = [[[ NSBundle mainBundle ] loadNibNamed: @" LCNumberInputControl " owner: self options: nil ] objectAtIndex: 0 ]; [inputView setFrame: CGRectMake ( 0 , self .view....

    自定义AlretVIew,使用xib文件定义View

    本教程将详细介绍如何通过Xib文件来创建一个自定义的AlertView,从而实现一个可扩展且高复用的UIView子类。 首先,我们需要创建一个新的Xib文件。在Xcode中,选择`File > New > File...`,然后在iOS分类中找到User ...

    ipad横竖屏切换解决方案

    NSArray *arrayContentView =[[NSBundle mainBundle] loadNibNamed:@"ArticleView" owner:self options:nil]; rightView=[arrayContentView objectAtIndex:0]; [self addSubview:rightView]; } return self; } ...

    IOS Settings 设置 Object-C

    NSArray *nibs = [[NSBundle mainBundle] loadNibNamed:@"CustomSettingCell" owner:self options:nil]; CustomSettingCell *cell = [nibs objectAtIndex:0]; self.tableView.registerNib:[UINib nibWithNibName:...

    iOS 自定义AlertView

    [[NSBundle mainBundle] loadNibNamed:@"ZYAlertView" owner:self options:nil]; _titleLabel = self.titleLabel; _messageLabel = self.messageLabel; // 设置标题和消息 _titleLabel.text = title; _...

    UITableView优化技巧

    cell = (ContacterTableCell*)[[[NSBundle mainBundle] loadNibNamed:@"ContacterTableCell" owner:self options:nil] lastObject]; } NSDictionary* dict = self.dataList[indexPath.row]; [cell ...

Global site tag (gtag.js) - Google Analytics