登录后如何更新 UITextView
Posted
技术标签:
【中文标题】登录后如何更新 UITextView【英文标题】:How to update UITextView after login 【发布时间】:2012-02-24 05:10:30 【问题描述】:我正在尝试使用 ARC 将 Facebook 集成到我的 ios 应用中。为了使用 FB SDK,我已经为这些文件禁用了“-fno-objc-arc”的 ARC。但是,它仍然有 EXC_BAD_ACCESS 错误,我需要更改
@property(nonatomic, assign) id<FBSessionDelegate> sessionDelegate;
到
@property(nonatomic, retain) id<FBSessionDelegate> sessionDelegate;
现在可以登录了,但是登录后 UITextView 没有更新
- (void)viewWillAppear:(BOOL)animated
[super viewWillAppear:animated];
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"]
&& [defaults objectForKey:@"FBExpirationDateKey"])
[delegate facebook].accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
[delegate facebook].expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
[defaults synchronize];
if (![[delegate facebook] isSessionValid])
[[delegate facebook] authorize:nil];
- (void)fbDidLogin
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[[delegate facebook] accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[[delegate facebook] expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];
[[delegate facebook] requestWithGraphpath:@"me" andDelegate:self];
- (void)request:(FBRequest *)request didLoad:(id)result
if ([result isKindOfClass:[NSArray class]])
result = [result objectAtIndex:0];
if ([result objectForKey:@"name"])
self.uitextview.text = [result objectForKey:@"name"];
我已经检查过“[result objectForKey:@"name"]”会返回一个结果,但“self.uitextview”无法识别。
成功?
【问题讨论】:
你的self.uilabel
在哪里?
【参考方案1】:
发现无法使用 Appdelegate 中的 ViewController init,如 Facebook Hackbook 示例所示。
替换为以下声明:
UITabBarController *tabBarController = (UITabBarController *) self.window.rootViewController;
ViewController *viewcontroller = [[tabBarController viewControllers] objectAtIndex:4];
http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1
【讨论】:
以上是关于登录后如何更新 UITextView的主要内容,如果未能解决你的问题,请参考以下文章