登录成功后在 HomeView 中隐藏按钮
Posted
技术标签:
【中文标题】登录成功后在 HomeView 中隐藏按钮【英文标题】:Hide Button in HomeView after successful Login 【发布时间】:2016-12-03 08:41:43 【问题描述】:我在HomeView
中有两个按钮(btnHome
和 btnProfile
)。成功登录后,同样的HomeView
会显示,但btnProfile
应该被隐藏。
【问题讨论】:
你在快速工作吗?你的目标c 不缩写是一种很好的常见做法(符合 ios 命名)。此外,将类型名称放在最后也很常见。所以你应该考虑名称:homeButton
和 profileButton
。
Objective-C……..
@Abhimanyu 检查我的答案
【参考方案1】:
您可以将成功登录动作的标记保存到NSUserDefaults
,并在viewWillAppear
方法中检查。您的UIViewController
示例:
class LoginViewController: UIViewController
let btnProfile = UIButton()
override func viewWillAppear(_ animated: Bool)
super.viewWillAppear(animated)
let hasLoginAction = UserDefaults.standard.bool(forKey: "success_login")
btnProfile.isHidden = hasLoginAction
func login()
//just example, your logic logic here
UserDefaults.standard.set(true, forKey: "success_login")
Objective-C
版本:
@interface ViewController ()
@property (nonatomic) IBOutlet UIButton *btnProfile;
@end
@implementation ViewController
- (void)viewWillAppear:(BOOL)animated
[super viewWillAppear:animated];
BOOL hasLogin = [[NSUserDefaults standardUserDefaults] boolForKey:@"success_login"];
self.btnProfile.hidden = hasLogin;
- (void)login
//just example, your logic logic here
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"success_login"];
@end
【讨论】:
请正确格式化您的代码,现在有一个
。
在 Objective-C 中好吗?【参考方案2】:
-(void) viewWillAppear:(BOOL)animated
[super viewWillAppear:animated];
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"LoginSuccess"] == YES)
//button hide
profile.hidden = NO;
当你登录成功的时候设置一个NSUserDefaults
值。
[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"LoginSuccess"];
【讨论】:
以上是关于登录成功后在 HomeView 中隐藏按钮的主要内容,如果未能解决你的问题,请参考以下文章
登录成功后隐藏登录页面并在android中显示main_activity