9

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?

Community
  • 1
  • 1
ohho
  • 50,879
  • 75
  • 256
  • 383

3 Answers3

10

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];
Kalpesh
  • 5,336
  • 26
  • 41
6

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]];
}
Vaibhav Saran
  • 12,848
  • 3
  • 65
  • 75
  • I prefer to set the background images using resizable images. Checkout variations of the [UIButton for iOS 7 and touch behavior](http://iphonedev.tv/blog/2014/1/22/programmatic-uibutton-on-ios-70-create-a-uibutton-with-code). – Paul Solt Apr 03 '14 at 15:47
1

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.

Fábio Oliveira
  • 2,346
  • 21
  • 30