用xib建立一个自定义view,在view上添加并排按钮

 
 

绑定过程

  1. 先来新建一个自定义的View,继承自UIView(必须的了)

    Paste_Image.png
  2. 新建一个xib文件 在这里,为了更好地识别,我们把这个xib的名字命名成我们之前新建的那个view子类。

    Paste_Image.png
  3. 更改xib的File's Owner class,指向我们创建好的class

作者:Z_桃芮丝 链接:http://www.jianshu.com/p/5ed0cd60c8a8 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 
 
//关于 IBOutletCollection 的使用
 
 

在IB与相关文件做连接时,我们经常会用到两个关键字:IBOutlet和IBAction。经常用xib或storyboard的童鞋应该用这两上关键字非常熟悉了。不过UIKit还提供了另一个伪关键字IBOutletCollection,我们使用这个关键字,可以将界面上一组相同的控件连接到同一个数组中。

我们先来看看这个伪关键字的定义,可以从UIKit.framework的头文件UINibDeclarations.h找到如下定义:

#ifndef IBOutletCollection
#define IBOutletCollection(ClassName)
#endif
  • 1
  • 2
  • 3

从上面的定义可以看到,与IBOutlet不同的是,IBOutletCollection带有一个参数,该参数是一个类名。

通常情况下,我们使用一个IBOutletCollection属性时,属性必须是strong的,且类型是NSArray,如下所示:

@property (strong, nonatomic) IBOutletCollection(UIScrollView) NSArray *scrollViews;
  • 1

那么,应该如何创建IBOutletCollection呢?首先确保是一组相同的控件,以UIButton为例,首先将界面上的一个UIButton拖到代码文件中,不过选择的是outlet collection,如图:

接下来把其他的UIButton拖到该UIButton的代码区即可。


注意:一定要先把button拖到数组中,然后再命名,顺序不对会崩掉
 
 
 
 
 
 
 
 

---- viewcontroller.m 中代码 ----

#import "ViewController.h"

#import "ViewButton.h"

@interface ViewController ()

@property (nonatomic,strong) ViewButton *buttonXJP;

@end

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

}

- (ViewButton *)buttonXJP

{

    if (!_buttonXJP)

    {

        _buttonXJP = [ViewButton loadFromNib];

    }

    return _buttonXJP;

}

- (IBAction)btnClick:(id)sender

{

    NSLog(@"fdsafdsafsafdasf");

    [self.buttonXJP show];

    

}

//

// 下载自定义view
 
 
 
 
 
 
 
 
 
 
 

猜你喜欢

转载自blog.csdn.net/qq_29680975/article/details/78340943