我一直在阅读与框架和边界之间的区别相关的不同问题(可可:框架和边界之间有什么区别?,UIView框架,边界和中心),但我仍然不明白为什么这样的事情:
UILabel *newMark = [[UILabel alloc] initWithFrame:self.frame];
newMark.text = @"|A3";
[self addSubview:newMark];
或这个:
UILabel *newMark = [[UILabel alloc] init];
newMark.text = @"|A3";
newMark.frame = self.frame;
[self addSubview:newMark];
不显示标签,但在使用边界进行等效操作时,如下所示:
UILabel *newMark = [[UILabel alloc] initWithFrame:self.bounds];
newMark.text = @"|A3";
[self addSubview:newMark];
或这个
UILabel *newMark = [[UILabel alloc] init];
newMark.text = @"|A3";
newMark.frame = self.bounds;
[self addSubview:newMark];
它被显示。使用边界我不会有问题,但我认为没有将标签放在正确的位置,如以下屏幕截图所示:
如您所见,其中“|”,“A”和“3”被剪切,因为它们显示在底部而不是ipad的屏幕上。有任何想法吗?