Je veux définir le titre de l'en-tête dans la section de UITableView. Quelle est la syntaxe dans Swift pour définir le titre de l'en-tête dans la section.
func tableView( tableView : UITableView, titleForHeaderInSection section: Int)->String
{
switch(section)
{
case 2:
return "Title 2"
break
default:
return ""
break
}
}
func tableView (tableView:UITableView , heightForHeaderInSection section:Int)->Float
{
var title = tableView.titleForHeaderInSection[section];
if (title == "") {
return 0.0;
}
return 20.0;
}
func tableView (tableView:UITableView, viewForHeaderInSection section:Int)->UIView
{
var title = tableView.titleForHeaderInSection[section] as String
if (title == "") {
return UIView(frame:CGRectZero);
}
var headerView:UIView! = UIView (frame:CGRectMake(0, 0, self.tableView.frame.size.width, 20.0));
headerView.backgroundColor = self.view.backgroundColor;
return headerView;
}
Vous pouvez utiliser la fonction déjà définie dans votre classe, c'est-à-dire:
self.tableView (tableView, titleForHeaderInSection: section)
Par exemple, en utilisant votre code:
func tableView( tableView : UITableView, titleForHeaderInSection section: Int)->String {
switch(section) {
case 2:return "Title 2"
default :return ""
}
}
func tableView (tableView:UITableView , heightForHeaderInSection section:Int)->Float
{
var title = self.tableView(tableView, titleForHeaderInSection: section)
if (title == "") {
return 0.0
}
return 20.0
}
Pour appeler cette méthode, vous devez utiliser la méthode UITableViews titleForHeaderInSection
. Cette méthode fournira l'index de la section en cours et vous devez renvoyer une chaîne, la chaîne retournée sera définie comme en-tête.
Pour invoquer cela, supposons que nous avons un tableau de chaînes appelé cars
cars = ["Muscle", "Sport", "Classic"]
On peut alors simplement appeler
override func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String?
{
// Ensure that this is a safe cast
if let carsArray = cars as? [String]
{
return carsArray[section]
}
// This should never happen, but is a fail safe
return "unknown"
}
Cela renverra les titres des sections dans l'ordre indiqué ci-dessus.