在文本视图和按钮上获取零值
Getting nil value on textview and button
你好,我正在制作一个应用程序,用户可以在其中按下一个按钮,然后随机 link 显示 upp。我在文本文件中试图命名 blblbl.delegate = self 但是当 运行 代码突然说我所有的文本视图和按钮的值为 nil。
class ViewController: UIViewController, UITextViewDelegate,
NSObjectProtocol {
@IBOutlet weak var firstbutton: UIButton!
@IBOutlet weak var firsttextview: UITextView!
let links = ["http://www.google.com","http://www.yahoo.com",
"http://www.discovery.com"]
var currentLinkIndex : Int = 0
override func viewDidLoad() {
Firsttextview.delegate = self
configureTextView()
super.viewDidLoad()
}
func configureTextView() {
func textView(firsttextview: UITextView!, shouldInteractWithURL
URL:
NSURL, inRange characterRange: NSRange) -> Bool {
let url = NSURL(string:links[currentLinkIndex])
UIApplication.sharedApplication().openURL(url!)
return false
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func firstaction(sender: UIButton) {
let random : Int = Int(arc4random()) % 3
Firsttextview.text = links[random]
currentLinkIndex = random
}
}
如何解决这个问题?我有什么方法必须给 textview 和按钮一个值吗?提前致谢!
我猜你需要更改:
Firsttextview.delegate
到 firsttextview.delegate
和
Firsttextview.text = links[random]
到 firsttextview.text = links[random]
我试图通过以下方式重新创建您的示例:
在故事板中创建按钮
在故事板中创建文本视图
- 从情节提要中的按钮创建 + 拖放到我的 ViewController Class IBOutlet firstbutton
- 创建 + 拖放到我的 ViewController Class 情节提要中文本视图中的 IBOutlet firsttextview
- 从情节提要中的按钮创建 + 拖放到我的 ViewController Class IBAction 第一动作
如果按钮和标签是在故事板中创建的,则不需要在您的代码中对其进行初始化。
通过这样做,您的代码对我有用。
你好,我正在制作一个应用程序,用户可以在其中按下一个按钮,然后随机 link 显示 upp。我在文本文件中试图命名 blblbl.delegate = self 但是当 运行 代码突然说我所有的文本视图和按钮的值为 nil。
class ViewController: UIViewController, UITextViewDelegate,
NSObjectProtocol {
@IBOutlet weak var firstbutton: UIButton!
@IBOutlet weak var firsttextview: UITextView!
let links = ["http://www.google.com","http://www.yahoo.com",
"http://www.discovery.com"]
var currentLinkIndex : Int = 0
override func viewDidLoad() {
Firsttextview.delegate = self
configureTextView()
super.viewDidLoad()
}
func configureTextView() {
func textView(firsttextview: UITextView!, shouldInteractWithURL
URL:
NSURL, inRange characterRange: NSRange) -> Bool {
let url = NSURL(string:links[currentLinkIndex])
UIApplication.sharedApplication().openURL(url!)
return false
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func firstaction(sender: UIButton) {
let random : Int = Int(arc4random()) % 3
Firsttextview.text = links[random]
currentLinkIndex = random
}
}
如何解决这个问题?我有什么方法必须给 textview 和按钮一个值吗?提前致谢!
我猜你需要更改:
Firsttextview.delegate
到 firsttextview.delegate
和
Firsttextview.text = links[random]
到 firsttextview.text = links[random]
我试图通过以下方式重新创建您的示例:
在故事板中创建按钮
在故事板中创建文本视图
- 从情节提要中的按钮创建 + 拖放到我的 ViewController Class IBOutlet firstbutton
- 创建 + 拖放到我的 ViewController Class 情节提要中文本视图中的 IBOutlet firsttextview
- 从情节提要中的按钮创建 + 拖放到我的 ViewController Class IBAction 第一动作
如果按钮和标签是在故事板中创建的,则不需要在您的代码中对其进行初始化。
通过这样做,您的代码对我有用。