Creé un UITableView
en Interface Builder usando storyboards
. losUITableView
está configurado con static cells
y un número de diferentes secciones.
El problema que tengo es que estoy intentando configurar mi aplicación en varios idiomas diferentes. Para hacer esto, necesito poder cambiar elUITableView
títulos de secciones de alguna manera.
Por favor, ¿alguien puede ayudarme? Idealmente, me gustaría abordar el problema utilizando, IBOutlets
sin embargo, sospecho que esto ni siquiera es posible en este caso. Cualquier consejo y sugerencia será muy apreciado.
Gracias por adelantado.
iphone
ipad
uitableview
uistoryboard
iboutlet
El chimpancé loco
fuente
fuente
numberOfSectionsInTableView:tableView:
para que se llame.numberOfSectionsInTableView:tableView:
implementado en IB para celdas estáticas.numberOfSectionsInTableView:
, se llama al método del título y se anula el guión gráfico. Dado que esta es una vista de tabla estática, está bastante bien anularla con un método que devuelva un número constante @wcochranSi está escribiendo código en Swift, se vería como un ejemplo como este
fuente
Utilice el método UITableViewDataSource
fuente
titleForHeaderInSection es un método delegado de UITableView, por lo que para aplicar el texto del encabezado de la sección, escriba de la siguiente manera,
fuente
Tenga en cuenta que
-(NSString *)tableView: titleForHeaderInSection:
UITableView no lo llama si- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
se implementa en un delegado de UITableView;fuente
el texto de la etiqueta de sección está configurado.
fuente
(original)
Tenía un requisito similar. Tenía una tabla estática con celdas estáticas en mi Main.storyboard (Base). Para localizar títulos de sección usando archivos .string, por ejemplo, Main.strings (alemán), simplemente seleccione la sección en el guión gráfico y anote el ID del objeto
Luego, vaya a su archivo de cadena, en mi caso Main.strings (alemán) e inserte la traducción como:
Recursos adicionales:
fuente
No conozco las versiones anteriores de los
UITableView
protocolos, pero a partir de iOS 9,func tableView(tableView: UITableView, titleForHeaderInSection section: Int) -> String?
es parte delUITableViewDataSource
protocolo.No es necesario declarar el
delegate
para llenar su tabla con datos.fuente