我正在尝试以编程方式构建UI.如何让这个动作起作用?我正在与Swift一起开发.
viewDidLoad中的代码:
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let myFirstLabel = UILabel()
let myFirstButton = UIButton()
myFirstLabel.text = "I made a label on the screen #toogood4you"
myFirstLabel.font = UIFont(name: "MarkerFelt-Thin", size: 45)
myFirstLabel.textColor = UIColor.redColor()
myFirstLabel.textAlignment = .Center
myFirstLabel.numberOfLines = 5
myFirstLabel.frame = CGRectMake(15, 54, 300, 500)
myFirstButton.setTitle("?", forState: .Normal)
myFirstButton.setTitleColor(UIColor.blueColor(), forState: .Normal)
myFirstButton.frame = CGRectMake(15, -50, 300, 500)
myFirstButton.addTarget(self, action: "pressed", forControlEvents: .TouchUpInside)
self.view.addSubview(myFirstLabel)
self.view.addSubview(myFirstButton)
}
func …Run Code Online (Sandbox Code Playgroud) 我想做一个圆形的拇指和拇指按下按钮.
我应该使用ImageView还是Button作为超类?
我如何在Swift中执行此操作?
我看到一些示例代码将相同的OnClick事件分配给Android中的所有按钮(即使它们执行完全不同的操作).如何用Swift做到这一点
Android示例:
@Override
public void onCreate(Bundle savedInstanceState) {
button1.setOnClickListener(onClickListener);
button2.setOnClickListener(onClickListener);
button3.setOnClickListener(onClickListener);
}
private OnClickListener onClickListener = new OnClickListener() {
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.button1:
//DO something
break;
case R.id.button2:
//DO something
break;
case R.id.button3:
//DO something
break;
}
}
};
Run Code Online (Sandbox Code Playgroud)
注意:我不想以编程方式创建按钮.
如何以编程方式向按钮添加操作.我需要在mapView中为按钮添加show动作.谢谢
let button = UIButton(type: UIButtonType.Custom) as UIButton
Run Code Online (Sandbox Code Playgroud) 自我在快速游乐场不起作用:
button.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
Run Code Online (Sandbox Code Playgroud)
错误:
游乐场执行失败:错误:: 42:13:错误:使用未解析的标识符'self'
我也尝试用里面的buttonAction方法创建一个类,但是当我点击按钮时,没有任何东西在控制台中打印
import UIKit
class myself {
func buttonAction(sender:UIButton!)
{
println("Button tapped")
}
}
var s = myself()
// Create View
var f = CGRect(x:0,y:0,width:200,height:200)
var view = UIView(frame:f)
// Create Button
var b = UIButton(frame: f)
b.setTitle("Hello", forState: UIControlState.Normal)
b.addTarget(s, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
view.addSubview(b)
view
Run Code Online (Sandbox Code Playgroud) 我有一个包含 3 页的页面视图控制器。我希望在所有这些按钮之上都可以看到一个“浮动”按钮。我曾尝试为 PageView 使用容器视图,但这似乎不起作用。我还能如何让按钮在所有 3 个页面中保持可见?
我已尝试使用此问题中所述的容器视图: UIButton 跨 UIPageViewController 的所有页面
我创建了一个按钮,但由于某种原因,触摸无法识别:
override func viewDidLoad() {
super.viewDidLoad()
var settingsButton = UIButton.buttonWithType(UIButtonType.System) as UIButton
settingsButton.frame = CGRectMake(self.view.frame.size.width - 50, 35, 35, 35)
settingsButton.setImage(UIImage(named: "settings-button"), forState: UIControlState.Normal)
settingsButton.addTarget(self, action: Selector("settingsButtonPressed"), forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(settingsButton)
}
func settingsButtonPressed(){
println("Settings selected")
}
Run Code Online (Sandbox Code Playgroud)
我没有收到任何错误,只是在我触摸按钮时没有注册。我也试过制作一个 UIButtonType.Custom 类型的按钮,我试过选择器作为
Selector("settingsButtonPressed")
Selector("settingsButtonPressed:") //I changed the function to settingsButtonPressed(sender: UIButton)
"settingsButtonPressed"
"settingsButtonPressed:" //I changed the function to settingsButtonPressed(sender: UIButton)
Run Code Online (Sandbox Code Playgroud)