私は2つのボタンを持っていて、すべてのボタンの左側にバッジラベルがありますが、これらのバッジラベルのサイズを動的にしたいのですが、現時点でこれを行うにはどうすればよいですか
アプリを起動すると
しかし、穴のセルを上にスクロールすると、こうあるべきです
Iphone SDK 6.0 を使用する場合:
#import <QuartzCore/QuartzCore.h>
#import "JSMBadgeLabel.h"
@interface JSMBadgeLabel ()
-(void) setup;
@end
@implementation JSMBadgeLabel
@synthesize targetUIView = _targetUIView;
-(void) setup{
self.layer.cornerRadius = self.font.pointSize *0.8;
}
-(void)awakeFromNib
{
[self setup];
}
-(void)setText:(NSString *)text{
[super setText:text];
CGSize size = [text sizeWithFont:self.font];
self.frame = CGRectMake(self.frame.origin.x ,self.frame.origin.y,size.width + self.font.pointSize *0.8,size.height);
CGRect badgeFrame = self.frame;
CGRect targetFrame = self.targetUIView.frame;
self.frame = CGRectMake(targetFrame.origin.x+targetFrame.size.width- badgeFrame.size.width/2,targetFrame.origin.y-badgeFrame.size.height/2,badgeFrame.size.width,badgeFrame.size.height);}@end
-(void) updateAsBadge:(NSString*)newText {
self.text = newText;
[self sizeToFit];
const int padding = 1;
self.frame = CGRectMake(self.superview.bounds.size.width - self.bounds.size.width-padding, padding, self.bounds.size.width, self.bounds.size.height);
}
ありがとう。