3つのUILabelを含むカスタムUITableViewCellがあります。これらのラベルの2つはセルの左側に配置され、もう1つは右側に配置されます。これがどのように見えるかです:
私が抱えている問題は、UITableViewが編集モードのときです。AutoResizingMasksを使用して、右側のラベルが画面の横から消えないようにしようとしていますが、うまくいきません。これが何が起こるかです:
私が遊んでいるコードは、サブクラスUITableViewCellからのものです。これが私のコードです:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self)
{
// Setup the cells accessory
self.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
// Setup the cell background
self.backgroundView = [[UIImageView alloc] initWithImage:[[UIImage imageNamed:@"Plain_Cell.png"] stretchableImageWithLeftCapWidth:0.0 topCapHeight:5.0]];
// Setup the Main label (fruit names)
mainLabel = [[UILabel alloc] init];
mainLabel.font = [UIFont systemFontOfSize:25];
mainLabel.backgroundColor = [UIColor clearColor];
[self.contentView addSubview:mainLabel];
// Setup the dates label
datesLabel = [[UILabel alloc] init];
datesLabel.font = [UIFont systemFontOfSize:14];
datesLabel.backgroundColor = [UIColor clearColor];
[self.contentView addSubview:datesLabel];
// Setup the milage label
distanceLabel = [[UILabel alloc] init];
distanceLabel.textAlignment = UITextAlignmentRight;
distanceLabel.font = [UIFont systemFontOfSize:14];
distanceLabel.backgroundColor = [UIColor clearColor];
[self.contentView addSubview:distanceLabel];
}
return self;
}
- (void)layoutSubviews
{
[super layoutSubviews];
mainLabel.frame = CGRectMake(10, 10, 280, 39);
datesLabel.frame = CGRectMake(10, 58, 184, 21);
distanceLabel.frame = CGRectMake(205, 58, 85, 21);
mainLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin;
datesLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleLeftMargin;
distanceLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleRightMargin;
}
注:その他のコードについては、下にスクロールしてください。
しかし、私はそれであまり運がありませんでした。誰かが私を助けてくれませんか?