实现步骤:
1.创建一个带.xib的视图控制器
2.在.xib中拖动要添加的视图控件
3.选中控件,按住command键向类中拖放,设置变量名,则绑定了控件,可以给该控件用代码操作视图了,此时用了IBOutlet,外联指针。
3.选中按钮控件,按住command键向类中拖放,设置方法名,则给该控件添加了事件,此时用了IBAction。
如下例子:
.h文件中
@interface RootViewController : UIViewController
#pragma mark--------通过界面可以拖出控件为属性
@property (weak, nonatomic) IBOutlet UITextField *nameTextField;
@property (weak, nonatomic) IBOutlet UITextField *secureTextField;
@property (weak, nonatomic) IBOutlet UIButton *loginBtn;
- (IBAction)Login:(UIButton *)sender;
@end
.m文件中
- (void)viewDidLoad {
[super viewDidLoad];
self.nameTextField.placeholder = @"输入用户名";
self.secureTextField.placeholder = @"输入密码";
}
#pragma mark---------链接可视化界面的按钮,给它绑定事件
- (IBAction)Login:(UIButton *)sender
{
NSLog(@"这是登陆按钮");
}
- (IBAction)Register:(UIButton *)sender{
NSLog(@"这是注册按钮");
}
AppDelegate.m文件中
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//创建窗口
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
#pragma mark----------创建一个根视图控制器
//方法一:
RootViewController *rootVC = [[RootViewController alloc] initWithNibName:@"RootViewController" bundle:[NSBundle mainBundle]];
//方法二:
// RootViewController *rootVC = [[RootViewController alloc] initWithNibName:nil bundle:nil];
//方法三:
RootViewController *rootVC = [RootViewController new];
//为窗口添加根视图控制器
self.window.rootViewController = rootVC;
return YES;
}
//注意:initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
nibNameOrNil:是.xib文件的名字,但两个参数也可填nil,可默认找到.
该方法也可被init方法替换,默认找到对应的.xib文件。