Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get back the UIButton border in iOS 7?

I built an old project in iOS SDK 6.1 in Xcode 5. However, the UIbutton is borderless when the app runs on an iPhone running iOS 7. I have checked the .xib is "Builds for" > "Project Deployment Target (5.0)":

enter image description here

How can I config Xcode 5 to build the project to show an iOS 6.1-style UIButton?

like image 849
ohho Avatar asked Oct 22 '13 04:10

ohho


3 Answers

Try this

set border width of button by using QuartzCore Framework

#import <QuartzCore/QuartzCore.h>

button.layer.borderWidth=1.0f;
button.layer.borderColor=[[UIColor blackColor] CGColor];
like image 123
Kalpesh Avatar answered Nov 14 '22 14:11

Kalpesh


you can create a category:

- (void)setRoundedBorder:(float) radius borderWidth:(float)borderWidth color:(UIColor*)color
{
    CALayer * l = [self layer];
    [l setMasksToBounds:YES];
    [l setCornerRadius:radius];
    // You can even add a border
    [l setBorderWidth:borderWidth];
    [l setBorderColor:[color CGColor]];
}
like image 25
Vaibhav Saran Avatar answered Nov 14 '22 15:11

Vaibhav Saran


If you don't want to introduce any of the iOS 7 changes changing the SDK is not enough. You shouldn't leave the Interface Builder "Opens in" property unchanged as well.

I leave mine in "Xcode 4.6" and everything looks as it should.

I think the only advantage you would take is with the new auto-layout.

like image 1
Fábio Oliveira Avatar answered Nov 14 '22 15:11

Fábio Oliveira