0

我想以编程方式调整按钮的大小,但修改参数没有效果。

btnCancel = [UIButton buttonWithType:102];
[btnCancel setFrame:CGRectMake(22.0f, 7.0f, 40.0f, 40.0f)];
[btnCancel setTitle:@"Anuluj" forState:UIControlStateNormal];
[btnCancel setTintColor:[UIColor redColor]];
[btnCancel addTarget:self action:@selector(cancelTyping) forControlEvents:UIControlEventTouchUpInside];

知道为什么吗?我可以给参数任何我喜欢的量,但结果是相同的 - 宽度限制为文本长度。

4

4 回答 4

1

我拿了你的代码并在 iOS 6.0 中测试了它。这是您需要做的最终版本

添加 QuartzCore 库并将其添加到您的头文件中

#import <QuartzCore/QuartzCore.h> 

现在这是您的带有图片的按钮代码。玩弄宽度和高度,它们会改变

UIButton *btnCancel =[UIButton buttonWithType:UIButtonTypeCustom];
    [btnCancel setFrame:CGRectMake(22.0f, 7.0f, 80.0f, 80.0f)];
    [btnCancel setTitle:@"Anuluj" forState:UIControlStateNormal];
    btnCancel.backgroundColor = [UIColor redColor];
    btnCancel.layer.borderColor = [UIColor redColor].CGColor;
    btnCancel.layer.borderWidth = 0.5f;
    btnCancel.layer.cornerRadius = 10.0f;
    [btnCancel addTarget:self action:@selector(cancelTyping) forControlEvents:UIControlEventTouchUpInside];

在此处输入图像描述

于 2013-06-25T20:49:55.663 回答
0

尝试btnCancel = [UIButton buttonWithType:102];改变btnCancel = [UIButton buttonWithType:UIButtonTypeCustom];

于 2013-06-25T20:22:48.643 回答
0

您几乎可以肯定已打开自动布局。进入界面生成器并将其关闭,您的代码应该可以工作

于 2013-06-25T20:23:01.813 回答
0

使用[UIButton buttonWithType:UIButtonTypeCustom]适当的值,按钮将调整大小。

UIButtonTypeCustom = 0,
UIButtonTypeRoundedRect,
UIButtonTypeDetailDisclosure,
UIButtonTypeInfoLight,
UIButtonTypeInfoDark,
UIButtonTypeContactAdd
于 2013-06-25T20:27:27.263 回答