`
fantom
  • 浏览: 141996 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

initWithFrame<>initWithCoder

 
阅读更多
initWithFrame  和   initWithCoder

当我们所写的程序里没用Nib文件(XIB)时,用代码控制视图内容,需要调用initWithFrame去初始化
- (id)initWithFrame:(CGRect)frame {
    if ((self = [super initWithFrame:frame])) {
        // Initialization code
    }
    return self;
}


用于视图加载nib文件,从nib中加载对象实例时,使用 initWithCoder初始化这些实例对象
- (id)initWithCoder:(NSCoder*)coder
{
    if (self =[superinitWithcoder:coder]) {
        // Initialization code
    }
    return self;
}
分享到:
评论

相关推荐

    initWithCoder与initWithFrame

    每个ios开发者对loadView和viewDidLoad肯定都很熟悉,虽然这两个函数使用上真的是非常简单,但是和类似的initWithNibName/awakeFromNib/initWithCoder放在一起还是非常容易让人混淆的. 昨天看了下苹果官方的相关文档...

    NBJNibBasedView-ObjC:基于简易笔尖的自定义视图

    此类别使用UIView的initWithFrame:和initWithCoder:方法上的方法UIView来加载所需的 Nib 并将其第一个对象(应该是视图)添加到视图层次结构中。定制要自定义视图层次结构的加载方式,请实现以下任何...

    iOS学习入门教程附有Demo

    1. 初始化:通过initWithFrame:或initWithCoder:方法创建。 2. 加载视图:视图的加载可能在需要显示时才发生,通过layoutSubviews方法调整子视图的布局。 3. 显示与隐藏:通过hidden属性控制视图的可见性,而...

    自定义复选框的例子

    3. 触摸处理:实现`- (void)touchesBegan:(NSSet&lt;UITouch *&gt; *)touches withEvent:(UIEvent *)event`、`- (void)touchesMoved:(NSSet&lt;UITouch *&gt; *)touches withEvent:(UIEvent *)event`、`- (void)touchesEnded:...

    一行代码实现星级评价

    1. 初始化方法:`- (instancetype)initWithFrame:(CGRect)frame`和`- (instancetype)initWithCoder:(NSCoder *)coder`,这两个方法用于创建视图实例,并可能进行初始化设置。 2. 自定义绘制逻辑:`- (void)drawRect:...

    iOS简单实现遮罩层

    #import &lt;UIKit/UIKit.h&gt; @interface MaskView : UIView @property (nonatomic, strong) UIColor *maskColor; // 遮罩颜色 @property (nonatomic) CGFloat alpha; // 遮罩的透明度 @property (nonatomic) BOOL ...

    iOS8.4下编译通过的Panorama360全景图片展示demo

    原作者的PLBaseView初始化只重写了- (id)initWithCoder:(NSCoder*)coder ,没有重写- (id)initWithFrame。搞得我这种不用storyboard的人,找了半天没图像的原因。哈哈,其实主要是想混点分的,希望大家多多下载=。...

    自定义UIView子类

    1. 在项目中,创建一个新的XIB文件:"File" -&gt; "New" -&gt; "File" -&gt; "User Interface" -&gt; "View",命名为"JXCustomView.xib"。 2. 在新创建的XIB文件中,你可以将需要的UI元素(如UILabel、UIButton等)拖放到视图上...

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

    在Objective-C中,你可以在`initWithFrame:`和`initWithCoder:`方法中加载Xib: ```objc #import "CustomAlertView.h" @implementation CustomAlertView - (instancetype)initWithFrame:(CGRect)frame { self = ...

    简单颜色选择器

    4. `- (void)touchesBegan/Moved/Ended:(NSSet&lt;UITouch *&gt; *)touches withEvent:(UIEvent *)event`:这些触摸事件处理方法可能会用来检测用户的触摸动作,从而更新颜色选择。 5. `- (void)layoutSubviews`:当视图...

    cocoa知识点

    9. **NSView初始化**:NSView有两种主要的初始化方式,即`initWithFrame:`和`initWithCoder:`,前者用于基于代码的初始化,后者用于Interface Builder中的 nib 文件加载。 10. **多任务和后台运行**:iOS 4引入了多...

    自定义索引控件封装

    1. 初始化方法:可能有`initWithFrame:`或`initWithCoder:`来实例化控件,并进行基本的配置。 2. 布局方法:如`layoutSubviews`,在其中计算每个索引的大小和位置。 3. 触摸事件处理:`touchesBegan:withEvent:`, `...

    iOS开发教程之UIView和UIViewController的生命周期详解

    一个UIView实例可以通过三种方式创建:`init`,`initWithFrame:`和`initWithCoder:`。在上述代码中,我们重写了这些初始化方法来打印日志,以便观察各个方法的执行顺序。`awakeFromNib`方法在从XIB或Storyboard加载...

    ios-UIPickView自定义的封装.zip

    代码创建时,可以使用`initWithFrame:`或`initWithCoder:`方法。 2. **数据源与代理**:UIPickerView需要遵循`UIPickerViewDataSource`和`UIPickerViewDelegate`协议,以便设置显示的行数、每行的数据以及处理选择...

    OC仿转转首页banner图

    - 在初始化方法`initWithFrame:`或`initWithCoder:`中,我们可以设置默认的属性,比如初始化时的图片数组、间距、动画时间等。 - 使用AutoLayout或Size Classes来处理不同屏幕尺寸下的适配,确保Banner在不同设备...

    自定义的tabBar

    - 重写`initWithFrame:`或`initWithCoder:`方法,以便在实例化时设置自定义属性,如背景色、高度、边框等。 3. **自定义TabBarItem** - `UITabBarItem`是Tab Bar上的每个图标和标签的表示。你可以通过设置`title`...

    自写iOS类:UIRadioBox

    同时,还需要实现初始化方法,如 `- (instancetype)initWithFrame:(CGRect)frame` 和 `- (instancetype)initWithCoder:(NSCoder *)aDecoder`。 2. **绘制RadioBox** 重写`- (void)drawRect:(CGRect)rect` 方法,...

    Custom.Slider.zip_iPhone/iOS_Objective-C_

    2. **重写初始化方法**:覆盖`initWithFrame:`或`initWithCoder:`方法,以便在创建滑块时应用自定义设置。 ```objc - (instancetype)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if ...

    iOS---IBDesignable-IBInspectable:项目包含一种使用 IBdesignables 和 IBinspectables 将 Nib 文件加载到 StoryBoard 的方法

    - (instancetype)initWithCoder:(NSCoder *)aDecoder { self = [super initWithCoder:aDecoder]; if (self) { [self commonInit]; } return self; } - (instancetype)initWithFrame:(CGRect)frame { self = ...

    ios-切换下方内容页面.zip

    2. **初始化方法(Initializers)**:如`- (instancetype)initWithFrame:(CGRect)frame`和`- (instancetype)initWithCoder:(NSCoder *)aDecoder`,用于创建和初始化ZMSwitchView实例。 3. **方法(Methods)**:...

Global site tag (gtag.js) - Google Analytics