Pug*_*gal 4 iphone dynamic width uibutton
我以编程方式创建了10个按钮,并在按钮中设置了标题.现在我想动态增加按钮框架大小,它取决于文本.
我给出了一些条件并设置了帧大小.但是我如何设置确切的帧大小取决于文本(动态获取文本).
这是我的示例代码,
float x=0, y=0, w, h=20;
for(int i = 100; i < 110; i++)
{
btn = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
UIImage * img = [UIImage imageNamed:@"Round_Rect4.png"];
[btn setBackgroundImage:img forState:UIControlStateSelected];
titleString = [titleArray objectAtIndex:i-100]; // get button title
if([titleString length] <= 5)
{
w = 50;
btn.frame = CGRectMake(x,y,w,h);
x = x + 70;
}
if (([titleString length] >= 6) && ([titleString length] <=10))
{
w = 70;
btn.frame = CGRectMake(x,y,w,h);
x = x + 90;
}
if(([titleString length] >= 11) && ([titleString length] <=15))
{
w = 105;
btn.frame = CGRectMake(x,y,w,h);
x = x + 120;
}
if([titleString length] >= 16)
{
w = 120;
btn.frame = CGRectMake(x,y,w,h);
x = x + 140;
}
[btn setTitle:titleString forState: UIControlStateNormal];
[btn setTag:i];
[self.view addSubview:btn];
Run Code Online (Sandbox Code Playgroud)
}
看到示例图片,
image-2 http://www.freeimagehosting.net/uploads/b6e0f234dc.png image-1 http://www.freeimagehosting.net/uploads/6b3daab12f.png
那么这可以设置确切的按钮框架大小,这取决于文本吗?plz指导我.
谢谢
tc.*_*tc. 14
[btn sizeToFit]
Run Code Online (Sandbox Code Playgroud)
我得到了答案,我的工作代码是,
float x=0;
for(int i = 100; i < 110; i++)
{
btn = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
UIImage * img = [UIImage imageNamed:@"Round_Rect4.png"];
[btn setBackgroundImage:img forState:UIControlStateSelected];
titleString = [titleArray objectAtIndex:i-100]; // get button title
CGSize fontSize = [titleString sizeWithFont:[UIFont systemFontOfSize:12.0]];
CGRect currentFrame = btn.frame;
CGRect buttonFrame = CGRectMake(x, currentFrame.origin.y, fontSize.width + 22.0, fontSize.height + 12.0);
[btn setFrame:buttonFrame];
x = x + fontSize.width + 35.0;
[btn setTitle:titleString forState: UIControlStateNormal];
[btn setTag:i];
[self.view addSubview:btn];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15802 次 |
| 最近记录: |