Ich habe eine TableView. Es ist nicht der TableViewController. Auf meinem ViewController habe ich ein TableView mit 15 Optionen. Ich kann jede Option ohne Probleme auswählen. Ich möchte also eine Schaltfläche verwenden, die nicht innerhalb des View-Controllers liegt, und wenn ich sie ausgewählt habe, bestimmt sie, welche Zeile der Tabelle ausgewählt ist. Für den Moment habe ich nur eine Warnmeldung mit welcher Zeile ausgewählt ist.Swift: Verwenden Sie eine Schaltfläche außerhalb einer Tabellenansicht und überprüfen Sie, welche Zeile ausgewählt wurde
Grundsätzlich ist jede Zeile der Tabelle eine andere Rasse: Zwerg, Elf, ect ... Direkt unter der Tabellenansicht befindet sich eine Schaltfläche. Wenn ich auf diese Schaltfläche klicke, erscheint eine Warnung, die angibt, welche Zeile ausgewählt wurde.
Hier ist, was ich bisher:
class raceViewController: UIViewController, UITableViewDelegate, UITableViewDataSource
{
@IBOutlet var raceInfoBtn: UIButton!
@IBOutlet var raceTable: UITableView!
// defines an array with the races
let races = ["Dwarf", "Elf","Gnome","Half-Elf","Half-Orc","Halfling","Human", // core races
"Ifrit","Oread","Sylph","Tengu","Undine", // featured races
"Kitsune","Nagaji","Wayang"] // uncommon races// uncommon races
// defines the stats array to correspond to the races array
let stats = ["+2 Con & Wis, -2 Chr","+2 Dex & Int, -2 Con","+2 Con & Dex, -2 Str","Click to add","Click to add","+2 Dex & Chr, -2 Str","Click to add", // core races
"+2 Dex & Chr, -2 Wis","+2 Str & Wis, -2 Chr","+2 Dex & Int, -2 Con","+2 Dex & Wis, -2 Str","+2 Dex & Wis, -2 Str", // featured races
"+2 Dex & Chr, -2 Str","+2 Str & Chr, -2 Int","+2 Dex & Int, -2 Chr"] // uncommon races// uncommon races] //core
public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
return(races.count)
}
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = UITableViewCell(style: UITableViewCellStyle.subtitle, reuseIdentifier: "raceCell")
//cell.textLabel?.text = races[indexPath.row] + stats[indexPath.row]
cell.textLabel?.text = races[indexPath.row]
cell.detailTextLabel?.text = stats[indexPath.row]
return (cell)
}
@IBAction func raceInfoBtn(_ sender: Any)
{
{
let alertController = UIAlertController(title: "iOScreator", message:
"dwarf", preferredStyle: UIAlertControllerStyle.alert)
alertController.addAction(UIAlertAction(title: "Dismiss", style: UIAlertActionStyle.default,handler: nil))
self.present(alertController, animated: true, completion: nil)
}
}
}
Im IBAction raceInfoBtn
ist, wo ich es, welche Zeile überprüfen möchten tatsächlich ausgewählt wurde.
süßen dank. Ich brauchte einen Moment, um es herauszufinden. Ich habe gerade einen Ausdruck davon gemacht, der auf die Konsole schaute. Jetzt geht es weiter zur nächsten Sache. – Micheal