分享

40、首页,获得用户信息(昵称)

 雪柳花明 2016-04-10
这里需要在首页的导航栏的title设置用户的昵称。

这里用到了,用户,读取接口。获取用户的数据。


用户的昵称会发生改变,所以在软件运行时,要进行判断。先显示上一次的用户名称,在获取最新的用户昵称,在将其显示,并存储。

这里为了方便存储,在HMAccount类中增加一个属性,就可以了。

/**

 *  获得用户信息

 */

- (void)setupUserInfo

{

    // 1.获得请求管理者

    AFHTTPRequestOperationManager *mgr = [AFHTTPRequestOperationManager manager];

    

    // 2.封装请求参数

    NSMutableDictionary *params = [NSMutableDictionary dictionary];

    params[@"access_token"] = [HMAccountTool account].access_token;

    params[@"uid"] = [HMAccountTool account].uid;

    

    // 3.发送GET请求

    [mgr GET:@"https://api.weibo.com/2/users/show.json" parameters:params

     success:^(AFHTTPRequestOperation *operation, NSDictionary *userDict) {

         // 字典转模型

         HMUser *user = [HMUser objectWithKeyValues:userDict];

         

         // 设置用户的昵称为标题

         [self.titleButton setTitle:user.name forState:UIControlStateNormal];

         

         // 存储账号信息

         HMAccount *account = [HMAccountTool account];

         account.name = user.name;

         [HMAccountTool save:account];

     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {

         

     }];

}



由于用户的昵称文字有长,有短。所以最好的方式是根据用户昵称文字的长短自行设置长度。在首页控制器中设置导航栏title文字的长度。这里需要重写HMTItitleButton中的settitle方法。



- (void)setTitle:(NSString *)title forState:(UIControlState)state

{

    [super setTitle:title forState:state];

    

    // 1.计算文字的尺寸

    CGSize titleSize = [title sizeWithFont:self.titleLabel.font];

    

    // 2.计算按钮的宽度

    self.width = titleSize.width + self.height + 10;

}


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多