新浪微博客户端(35)-使用NSMutableAttributedString实现多行文本的效果

 

DJComposeViewController.m

import "DJComposeViewController.h"
#import "DJAccountTool.h"


@implementation DJComposeViewController




- (void)viewDidLoad {

    [super viewDidLoad];
    [self initNavigationView];
    [self initInputView];

}


- (void)viewDidAppear:(BOOL)animated {

    [super viewDidAppear:animated];
     self.navigationItem.rightBarButtonItem.enabled = NO;
    
}


/** 初始化NavigationView */
- (void)initNavigationView {

    self.view.backgroundColor = [UIColor whiteColor];
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"取消" style:UIBarButtonItemStyleDone target:self action:@selector(finish)];
    
    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"发送" style:UIBarButtonItemStylePlain target:self action:@selector(send)];
    
    
    
    
    UILabel *titleView = [[UILabel alloc] init];
    titleView.width = 200;
    titleView.height = 44;
    titleView.numberOfLines = 0; // 设置titleView 为多行显示
    titleView.textAlignment = NSTextAlignmentCenter;
    
    DJAccount *account = [DJAccountTool account];
    NSString *nickName = account.screen_name;
    NSString *prefix = @"发微博";
    NSString *str = [NSString stringWithFormat:@"%@\n%@",prefix,nickName];
    NSRange nick_name_range = [str rangeOfString:nickName];
    NSRange prefix_range = [prefix rangeOfString:prefix];
    
    NSMutableAttributedString *titleStr = [[NSMutableAttributedString alloc] initWithString:str];
    [titleStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:13] range:nick_name_range];
    [titleStr addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:15] range:prefix_range];
    
    
    titleView.attributedText = titleStr;
    self.navigationItem.titleView = titleView;
    
}



/** 初始化输入区域 */
- (void)initInputView {

    UITextView *inputView = [[UITextView alloc] init];
    inputView.frame = self.view.bounds;
    [self.view addSubview:inputView];

}



- (void)finish {

    [self dismissViewControllerAnimated:YES completion:nil];
    

}


/** 发微博 */
- (void)send {


    
    
}


@end

最终效果:

 

posted @ 2016-11-24 19:49  夜行过客  阅读(891)  评论(0编辑  收藏  举报