use*_*234 3 cocoa-touch objective-c ios uistepper
我似乎无法改变大小UIStepper:
我用过initWithFrame:
UIStepper*stepper = [[UIStepper alloc] initWithFrame:CGRectMake(300,638,120,80)];
但它不会改变大小.关于SO的几个帖子似乎暗示它是可变的.有什么建议吗?
UIStepper* s = [UIStepper alloc] init];
s.transform = CGAffineTransformMakeScale(0.75, 0.75);
Run Code Online (Sandbox Code Playgroud)
您无需转换即可正确更新UIStepper大小.
使用以下方法设置背景图像,步进器将使用背景大小绘制自己:
- (void)setBackgroundImage:(UIImage*)image forState:(UIControlState)state
Run Code Online (Sandbox Code Playgroud)
例
[self.stepper1 setIncrementImage:[UIImage imageNamed:@"plusIcon1.png"] forState:UIControlStateNormal];
[self.stepper1 setDecrementImage:[UIImage imageNamed:@"minusIcon1.png"] forState:UIControlStateNormal];
[self.stepper1 setBackgroundImage:[UIImage imageNamed:@"stepperBkg1.png"] forState:UIControlStateNormal];
[self.stepper1 setBackgroundImage:[UIImage imageNamed:@"stepperBkgHighlighted1.png"] forState:UIControlStateHighlighted];
[self.stepper1 setBackgroundImage:[UIImage imageNamed:@"stepperBkgDisabled1.png"] forState:UIControlStateDisabled];
Run Code Online (Sandbox Code Playgroud)
与右侧未修改的步进器相比,左侧产生以下结果:

stepperBkg1@2x.png:

stepperBkgHighlighted1@2x.png:

来自文档:
步进器的边界矩形与 UISwitch 对象的边界矩形匹配。
听起来不太可能,好像可以提前实现。
也在这篇博文中:
// Frame defines location, size values are ignored
UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMake(120, 20, 0, 0)];
Run Code Online (Sandbox Code Playgroud)
但你可以尝试改变它的图层。
| 归档时间: |
|
| 查看次数: |
6945 次 |
| 最近记录: |