首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改UIStepper的大小

更改UIStepper的大小
EN

Stack Overflow用户
提问于 2012-08-29 14:23:35
回答 7查看 8.7K关注 0票数 5

我似乎无法改变UIStepper的大小:

  1. 在IB中,宽度和高度框都是灰色的。
  2. 我使用了initWithFrame: UIStepper *stepper = [UIStepper alloc initWithFrame:CGRectMake(300,638,120,80)]; 但它不会改变大小。这上面的几个帖子似乎暗示着它是可变的。有什么建议吗?
EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2012-08-29 14:38:36

从医生那里:

步骤的边界矩形与UISwitch对象的边界矩形相匹配。

听起来不太可能,好像这是可能的。

同样在这个博客帖子

代码语言:javascript
复制
// Frame defines location, size values are ignored
UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMake(120, 20, 0, 0)]; 

但是你可以尝试变换它的层

票数 2
EN

Stack Overflow用户

发布于 2013-10-09 14:37:04

代码语言:javascript
复制
UIStepper* s = [UIStepper alloc] init];  
s.transform = CGAffineTransformMakeScale(0.75, 0.75);
票数 6
EN

Stack Overflow用户

发布于 2015-02-11 05:06:12

您可以在不进行转换的情况下正确更新UIStepper大小。

使用以下方法设置背景图像,步骤将使用背景大小绘制自己:

代码语言:javascript
复制
- (void)setBackgroundImage:(UIImage*)image forState:(UIControlState)state

示例

代码语言:javascript
复制
    [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];

与右侧未经修改的步骤相比,这将在左侧产生以下结果:

stepperBkg1@2x.png:

stepperBkgHighlighted1@2x.png:

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12180182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档