UIButton境界線だしつつStoryboardで設計


 iOS7にかわってから、UIButtonの境界線がなくなりました。Storyboardは画面遷移が可視化できるため非常に便利です。ここで問題はStoryboardを使いながらUIButtonの境界線を出す方法です。

 UIButtonの境界線を出す方法はButtonをIBOutletで定義する必要があります。

ViewController.m
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIButton *button;

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    _button.layer.borderColor = [UIColor grayColor].CGColor;
    _button.layer.borderWidth = 1.0f;
    _button.layer.cornerRadius = 7.5f;
}

このような感じで境界線を出します。
次に画面遷移を個別に定義します。

ViewController.m
   [_button addTarget:self action:@selector(done) forControlEvents:UIControlEventTouchDown];

 このような感じです。次にdoneを記述して画面遷移を記述します。ここで忘れていけないことはStoryboard上でStoryboard IDに何かKeyword指定です。ここではSecondViewControllerとしておきます。
 次にdoneを記述します。

ViewController.m
- (void)done{
    SecondViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"SecondViewController"];
    [self.navigationController pushViewController:vc animated:YES];
}

これでButtonをカスタマイズしつつStoryboardでUI設計できます。