这个是我自己写的稍微漂亮的button的方法,希望大家喜欢。
在viewcontroller.h代码
- #import <UIKit/UIKit.h>
- @interface ViewController : UIViewController
- @property(nonatomic, strong) IBOutlet UIButton *startGameButton;
- @property(nonatomic, strong) IBOutlet UIButton *multiplayerButton;
- @property(nonatomic, strong) IBOutlet UIButton *highScoresButton;
- @property(nonatomic, strong) IBOutlet UIButton *creditsButton;
- @end
在viewcontroller.m 代码
- #import "ViewController.h"
- #import <QuartzCore/QuartzCore.h>
- @interface ViewController ()
- @end
- @implementation ViewController
- @synthesize startGameButton, multiplayerButton, highScoresButton, creditsButton;
- - (void)viewDidLoad
- {
- [super viewDidLoad];
- // Do any additional setup after loading the view, typically from a nib.
- NSArray *buttons = [NSArray arrayWithObjects: self.startGameButton, self.multiplayerButton, self.highScoresButton,self.creditsButton,nil];
- for(UIButton *btn in buttons)
- {
- // BEGIN WORKING FROM TUTORIAL HERE
- // Set the button Text Color
- [btn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
- [btn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
- // Set default backgrond color
- [btn setBackgroundColor:[UIColor blackColor]];
- // Add Custom Font
- [[btn titleLabel] setFont:[UIFont fontWithName:@"Knewave" size:18.0f]];
- // Draw a custom gradient
- CAGradientLayer *btnGradient = [CAGradientLayer layer];
- btnGradient.frame = btn.bounds;
- btnGradient.colors = [NSArray arrayWithObjects:
- (id)[[UIColor colorWithRed:102.0f / 255.0f green:102.0f / 255.0f blue:102.0f / 255.0f alpha:1.0f] CGColor],
- (id)[[UIColor colorWithRed:51.0f / 255.0f green:51.0f / 255.0f blue:51.0f / 255.0f alpha:1.0f] CGColor],
- nil];
- [btn.layer insertSublayer:btnGradient atIndex:0];
- // Round button corners
- CALayer *btnLayer = [btn layer];
- [btnLayer setMasksToBounds:YES];
- [btnLayer setCornerRadius:5.0f];
- // Apply a 1 pixel, black border around Buy Button
- [btnLayer setBorderWidth:1.0f];
- [btnLayer setBorderColor:[[UIColor blackColor] CGColor]];
- }
- }
- - (void)viewDidUnload
- {
- [super viewDidUnload];
- // Release any retained subviews of the main view.
- }
- - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
- {
- return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
- }
- @end
效果图片: