LoginController
尝试简单登录尝试 - 如果其成功,则调用setEmail
,leftcontroller
。无法隐藏以编程方式创建的UIButton?
所有我需要做的,当setEmail
被调用是隐藏btnLogin
并显示buttonUser
并没有什么我尝试工作。 NSLog
被调用,EventsController
加载使setEmail
正在工作 - 它不会隐藏和显示按钮。
leftcontroller.h
:
@interface LeftController : UIViewController <UIApplicationDelegate>
{
IBOutlet UIButton *btnLogin;
IBOutlet UIButton *buttonUser;
NSString *setEmail;
}
@property (nonatomic,strong) IBOutlet UIButton *btnLogin;
@property (nonatomic,strong) IBOutlet UIButton *buttonUser;
@property(nonatomic,strong) UITableView *tableView;
@property(nonatomic) NSString *Email;
//-(void) setEmail : (NSString *) Email;
@end
leftcontroller.m
:
- (void) setEmail : (NSString *) Email{
[buttonUser setTitle:Email forState:UIControlStateNormal];
//btnLogin.hidden = YES;
//buttonUser.hidden = NO;
[btnLogin setHidden:YES];
[buttonUser setHidden:NO];
NSLog(@"Set Email Called");
NSLog(@"email: %@", Email);
DDMenuController *menuController = (DDMenuController*)((AppDelegate*)[[UIApplication sharedApplication] delegate]).menuController;
EventsViewController *controller = [[EventsViewController alloc] init];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:controller];
[menuController setRootController:navController animated:YES];
}
-(void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = HEXCOLOR(0x000000);
btnLogin = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btnLogin.frame = CGRectMake(0, 0, 180.f, 48);
[btnLogin setTitle:@"Login" forState:UIControlStateNormal];
[btnLogin addTarget:self action:@selector(LoginPressed)
forControlEvents:UIControlEventTouchUpInside];
btnLogin.tag=1;
btnLogin.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
[btnLogin setTitleColor: [UIColor whiteColor] forState:UIControlStateNormal];
btnLogin.contentEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
UIImage *btnImage = [UIImage imageNamed:@"nav_top.png"];
[btnLogin setBackgroundImage:btnImage forState:UIControlStateNormal];
[self.view addSubview:btnLogin];
buttonUser = [UIButton buttonWithType:UIButtonTypeRoundedRect];
buttonUser.frame = CGRectMake(0, 0, 180.f, 48);
//[buttonUser setTitle:_Email forState:UIControlStateNormal];
[buttonUser addTarget:self action:@selector(EmailPressed)
forControlEvents:UIControlEventTouchUpInside];
buttonUser.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
[buttonUser setTitleColor: [UIColor whiteColor] forState:UIControlStateNormal];
buttonUser.contentEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
UIImage *btnImage1 = [UIImage imageNamed:@"nav_top.png"];
[buttonUser setBackgroundImage:btnImage1 forState:UIControlStateNormal];
[self.view addSubview:buttonUser];
buttonUser.hidden = YES;
}
按钮是在XIB中定义的插座还是代码中的变量或两者兼而有之? – Wain 2013-04-29 16:49:53
no xib - 我不认为我需要IBOutlet - 只是尝试不同的事情,试图让它工作 – lsiunsuex 2013-04-29 17:03:42
http://stackoverflow.com/questions/4498400/cant-programmatically-hide-uibutton-created-with -ib?rq = 1 – matt 2013-04-29 17:13:32