如何以编程方式创建基本UIButton?我如何创建一个基本的UIButton以编程的方式?例如,在我的视图控制器中,当执行viewDidLoad方法三UIButtonS将动态创建,并设置其布局或属性。
3 回答
米脂
TA贡献1836条经验 获得超3个赞
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];[button addTarget:self action:@selector(aMethod:) forControlEvents:UIControlEventTouchUpInside];[button setTitle:@"Show View" forState:UIControlStateNormal]; button.frame = CGRectMake(80.0, 210.0, 160.0, 40.0);[view addSubview:button];
九州编程
TA贡献1785条经验 获得超4个赞
- (void)viewDidLoad { [super viewDidLoad]; [self addMyButton]; // Call add button method on view load}- (void)addMyButton{ // Method for creating button, with background image and other properties UIButton *playButton = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain]; playButton.frame = CGRectMake(110.0, 360.0, 100.0, 30.0); [playButton setTitle:@"Play" forState:UIControlStateNormal]; playButton.backgroundColor = [UIColor clearColor]; [playButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal ]; UIImage *buttonImageNormal = [UIImage imageNamed:@"blueButton.png"]; UIImage *strechableButtonImageNormal = [buttonImageNormal stretchableImageWithLeftCapWidth:12 topCapHeight:0]; [playButton setBackgroundImage:strechableButtonImageNormal forState:UIControlStateNormal]; UIImage *buttonImagePressed = [UIImage imageNamed:@"whiteButton.png"]; UIImage *strechableButtonImagePressed = [buttonImagePressed stretchableImageWithLeftCapWidth:12 topCapHeight:0]; [playButton setBackgroundImage:strechableButtonImagePressed forState:UIControlStateHighlighted]; [playButton addTarget:self action:@selector(playAction:) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:playButton]; }
潇潇雨雨
TA贡献1833条经验 获得超4个赞
目标-C
UIButton *but= [UIButton buttonWithType:UIButtonTypeRoundedRect];[but addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside]; [but setFrame:CGRectMake(52, 252, 215, 40)];[but setTitle:@"Login" forState:UIControlStateNormal];[but setExclusiveTouch:YES]; // if you like to add backgroundImage else no need [but setbackgroundImage:[UIImage imageNamed:@"XXX.png"] forState:UIControlStateNormal];[self.view addSubview:but];-(void) buttonClicked:(UIButton*)sender {NSLog(@"you clicked on button %@", sender.tag); }
斯威夫特
let myButton = UIButton() // if you want to set the type use like UIButton(type: .RoundedRect) or UIButton(type: .Custom) myButton.setTitle("Hai Touch Me", forState: .Normal) myButton.setTitleColor(UIColor.blueColor(), forState: .Normal) myButton.frame = CGRectMake(15, 50, 300, 500) myButton.addTarget(self, action: "pressedAction:", forControlEvents: .TouchUpInside) self.view.addSubview( myButton)func pressedAction(sender: UIButton!) { // do your stuff here NSLog("you clicked on button %@", sender.tag)}
SWIFT 3及以上
let myButton = UIButton() // if you want to set the type use like UIButton(type: .RoundedRect) or UIButton(type: .Custom) myButton.setTitle("Hi, Click me", for: .normal) myButton.setTitleColor(UIColor.blue, for: .normal) myButton.frame = CGRect(x: 15, y: 50, width: 300, height: 500) myButton.addTarget(self, action: #selector(pressedAction(_:)), for: .touchUpInside) self.view.addSubview( myButton)func pressedAction(_ sender: UIButton) { // do your stuff here print("you clicked on button \(sender.tag)")}
斯威夫特
import SwiftUIstruct ContentView : View { var body: some View { VStack { Text("Target Color Black") Button(action: { /* handle button action here */ }) { Text("your Button Name") .color(.white) .padding(10) .background(Color.blue) .cornerRadius(5) .shadow(radius: 5) .clipShape(RoundedRectangle(cornerRadius: 5)) } } }}#if DEBUGstruct ContentView_Previews : PreviewProvider { static var previews: some View { ContentView() }}#endif
- 3 回答
- 0 关注
- 569 浏览
添加回答
举报
0/150
提交
取消