Swift'de özel bir UIBarButtonItem eylemi nasıl ayarlanabilir?Swift'de bir UIBarButtonItem eylemi nasıl ayarlanır
Aşağıdaki kodu başarıyla gezinme çubuğunda bulunan düğmesine yerleştirir:
var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:nil)
self.navigationItem.rightBarButtonItem = b
Şimdi, düğme dokunulduğunda func sayHello() { println("Hello") }
çağırmak istiyorum. Benim çabaları şimdiye kadar:
var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:sayHello:)
// also with `sayHello` `sayHello()`, and `sayHello():`
ve ..
var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:@selector(sayHello:))
// also with `sayHello` `sayHello()`, and `sayHello():`
ve .. sayHello()
intellisense görünür, ancak çalışmadığını
var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:@selector(self.sayHello:))
// also with `self.sayHello` `self.sayHello()`, and `self.sayHello():`
Not.
Yardımlarınız için teşekkürler.
DÜZENLEME: kuşaklar için aşağıdaki çalışır: Swift 2.2 itibariyle
var b = UIBarButtonItem(title: "Continue", style: .Plain, target: self, action:"sayHello")
sadece bir dizede seçici koyarak Swift içinde seçiciler geçmesi, 'eylemi: "sayHello"' – Jiaaro
Çok teşekkür ederim. Bunu anlayabilmek için baskı altındayım ve hayal kırıklığına uğradım. – kmiklas
Bu soru daha önce Swift'de [@selector()] kopyası olarak işaretlenmiştir (http://stackoverflow.com/questions/24007650/selector-in-swift). Ancak, bu soru özellikle UIBarButtonItem' ile ilgili olarak sorarken diğeri de sormaz. Yeni başlayanların 'selector'un tüm kullanımlarını genelleştirmesi zor olabilir, bu yüzden yinelenen durumu kaldırıyorum, böylece insanlar bu soruyu güncel tutabilirler. – Suragch