我如何创建一个基本的UIButton编程?例如,在我的视图控制器中,当执行viewDidLoad方法时,将动态创建三个uibutton,并设置其布局或属性。


当前回答

你可以在你的ViewDidLoad方法中实现它:

continuebtn = [[UIButton alloc]initWithFrame:CGRectMake(10, 100, view1.frame.size.width-20, 40)];
    [continuebtn setBackgroundColor:[UIColor grayColor]];
    [continuebtn setTitle:@"Continue" forState:UIControlStateNormal];
    continuebtn.layer.cornerRadius = 10;
    continuebtn.layer.borderWidth =1.0;
    continuebtn.layer.borderColor = [UIColor blackColor].CGColor;
    [continuebtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
    [continuebtn addTarget:self action:@selector(continuetonext) forControlEvents:UIControlEventTouchUpInside];
    [view1 addSubview:continuebtn];

其中continuetonext为:

-(void)continuetonext
{
    GeneratePasswordVC *u = [[GeneratePasswordVC alloc]init];
    [self.navigationController pushViewController:u animated:YES];
}

其他回答

Swift 3版本应该是:

let myButton:UIButton = {
    let myButton = UIButton() // If you want to set the type use like
                              // UIButton(type: .RoundedRect) or
                              // UIButton(type: .Custom)
    myButton.setTitle("Hai Touch Me", for: .normal)
    myButton.setTitleColor(UIColor.blue, for: .normal)
    myButton.frame = CGRect(x: 20, y: 20, width: 100, height: 40)

    myButton.addTarget(self, action: #selector(ViewController.pressedAction(_:)), for: .touchUpInside)
    self.view.addSubview(myButton)

    return myButton
}()

试试这个:

首先把它写在你的。h文件的viewcontroller

UIButton *btn;

现在把这个写在viewcontrollers viewDidLoad的。m文件中。

btn=[[UIButton alloc]initWithFrame:CGRectMake(50, 20, 30, 30)];
[btn setBackgroundColor:[UIColor orangeColor]];
[btn setTitle: @"My Button" forState:UIControlStateNormal];
[btn setTitleColor: [UIColor blueVolor] forState:UIControlStateNormal];
[btn.layer setBorderWidth:1.0f];
[btn.layer setBorderColor:[UIColor BlueVolor].CGColor];
//adding action programatically
[btn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];

在视图控制器的。m文件中写入viewDidLoad方法的外部

- (IBAction)btnClicked:(id)sender
{
  //Write a code you want to execute on buttons click event
}
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button addTarget:self 
           action:@selector(aMethod:)
 forControlEvents:UIControlEventTouchUpInside];
[button setTitle:@"Show View" forState:UIControlStateNormal];
button.frame = CGRectMake(10.0, 100.0, 300.0, 20.0);
[self.view addSubview:button];

对于Swift 3(更短的代码)

let button = UIButton(type: UIButtonType.custom)
button.frame = CGRect(x: 0, y: 0, width: 200.0, height: 40.0)
button.addTarget(nil, action: #selector(tapButton(_:)), for: UIControlEvents.touchUpInside)
button.tintColor = UIColor.white
button.backgroundColor = UIColor.red
button.setBackgroundImage(UIImage(named: "ImageName"), for: UIControlState.normal)
button.setTitle("MyTitle", for: UIControlState.normal)
button.isEnabled = true

func tapButton(sender: UIButton) {

}
UIButton *addProject = [UIButton buttonWithType: UIButtonTypeRoundedRect];
addProject.frame = CGRectMake(210, 285, 100, 18);
[addProject setTitle:@"Show View" forState:UIControlStateNormal];
[addProject addTarget:self action:@selector(addProjectPressed:) forControlEvents:UIControlEventTouchUpInside];
[_scrollView addSubview:addProject];