相关疑难解决方法(0)

如何调整文本(字体)的大小以适应UISegmentedControl的UISegment?

有没有办法减少适合单段的字体大小UISegmentedControl

尝试了很多类似的东西,

[[UILabel appearanceWhenContainedIn:[UISegmentedControl class], nil] adjustsFontSizeToFitWidth];

[[UILabel appearanceWhenContainedIn:[UISegmentedControl class], nil] setMinimumScaleFactor:0.5];
Run Code Online (Sandbox Code Playgroud)

 NSArray *arr = segment.subviews;  // segment is UISegmentedControl object

for (int i = 0; i < arr.count; i++) {

    UIView *aSegment = [arr objectAtIndex:i];

    for (UILabel *label in aSegment.subviews) {

        if ([label isKindOfClass:[UILabel class]]) {

            UILabel *myLabel = (UILabel *)label;

            [myLabel setNumberOfLines:0];

            label.numberOfLines = 0;
            label.adjustsFontSizeToFitWidth = YES;
            label.minimumScaleFactor = 0.5;
        }



    }
}
Run Code Online (Sandbox Code Playgroud)

能够设置段标签的行数,如,

  [[UILabel appearanceWhenContainedIn:[UISegmentedControl class], nil] setNumberOfLines:0];
Run Code Online (Sandbox Code Playgroud)

可以根据内容设置单段大小,如,

  segment.apportionsSegmentWidthsByContent = YES;
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,每个细分市场的规模都不同 …

objective-c uisegmentedcontrol uilabel ios

7
推荐指数
1
解决办法
4691
查看次数

标签 统计

ios ×1

objective-c ×1

uilabel ×1

uisegmentedcontrol ×1