Ich implementiere eine hübsche Standard-Auswahlschaltfläche für ein UINavigationItem (rightBarButtonItem). Die Art und Weise, wie ich vorgehe, wird durch die Funktion viewDidLoad instanziiert. Ich übergebe einen Selektor als Aktion und schreibe dann diese Selektorfunktion außerhalb der viewDidLoad-Funktion.Verweis auf UIBarButtonItem in seiner Selektor-Aktionsfunktion
Offensichtliches Problem ist, die Navigation Auswahltaste ist nicht mehr im Bereich der Auswahlfunktion, so dass ich nicht verweisen und damit arbeiten kann.
Es muss viele Möglichkeiten geben, die Navigationsschaltfläche Auswählen zu implementieren. Ich möchte, dass es sich wie ein Schalter in einer Sammlungsansicht verhält, sodass ich Sammlungsansichtszellen nur auswählen und hervorheben kann, wenn die Auswahltaste gedrückt wurde. Dazu wird meine selector Aktion den myButton.selected booleschen Wert wie einen Schalter ein- und ausschalten (ich glaube also nicht, dass ich hier einen UISwitch brauche).
Genug Erklärung, hier ist der Code;
class GalleryViewController: UIViewController {
@IBOutlet var collectionView: UICollectionView!
....
override func viewDidLoad() {
super.viewDidLoad()
...
//MARK: Select button
let mySelector: Selector = #selector(GalleryViewController.selectSelector)
let selectButton: UIBarButtonItem = UIBarButtonItem(title: "Select", style: UIBarButtonItemStyle.Plain, target: self, action: mySelector)
self.navigationItem.rightBarButtonItem = selectButton
}
//MARK: Select Button Function
func selectSelector() {
//Toggle selectButton ON/OFF here, and more
}
Wenn Sie eine raffinierte Art und Weise der Schaffung eines navigationbar barButtonItem haben den Zustand des collectionViewCells zu wechseln, würde ich gerne hören! Geben Sie einfach eine vollständige Antwort, nicht davon ausgehen, dass ich viel über alles weiß (immer noch wie ich in Xcode facelroll)
Perfekte Verwendung von Absender/Empfänger, danke! – Typhon