で、帰ってきてからblog_nameとcaptionの表示部分をちょこちょこ書いてみた。UILabel使ってこんな感じで。
UILabel *bname=[[UILabel alloc]init]; //blog_name bname.text=[bnameArr objectAtIndex:i];bname.font=[UIFont fontWithName:@"Helvetica" size:10]; bname.textColor=[UIColor blackColor];bname.backgroundColor=[UIColor whiteColor];bname.alpha=0.5; CGFloat bwidth=[bname.text sizeWithFont:bname.font constrainedToSize:CGSizeMake(sw,10) lineBreakMode:UILineBreakModeTailTruncation].width; bname.frame=CGRectMake(0,0,bwidth,10); [postv addSubview:bname]; if([capArr objectAtIndex:i]){ //caption NSString *capText=[capArr objectAtIndex:i];NSRange r; while ((r=[capText rangeOfString:@"<[^>]+>" options:NSRegularExpressionSearch]).location!=NSNotFound) capText=[[capText stringByReplacingCharactersInRange:r withString:@""] stringByReplacingOccurrencesOfString:@"\n" withString:@""]; UILabel *caption=[[UILabel alloc]init]; caption.numberOfLines=0; caption.text=capText;caption.font=[UIFont fontWithName:@"Helvetica" size:10]; caption.textColor=[UIColor blackColor];caption.backgroundColor=[UIColor whiteColor];caption.alpha=0.5; CGSize csize=[caption.text sizeWithFont:caption.font constrainedToSize:CGSizeMake(sw, 30) lineBreakMode:UILineBreakModeTailTruncation]; caption.frame=CGRectMake(0,sh-csize.height,csize.width,csize.height); [postv addSubview:caption]; }
できた。
でもなんか無駄が多い気がする。もうちょいエレガントに書けんもんか。
0 件のコメント:
コメントを投稿