Me gustaría saber cómo obtener el valor de cadena textLabel
del uitableviewcell
seleccionado.Obtener texto de la etiqueta de texto de la celda seleccionada con el SDK de iPhone
Respuesta
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
// now you can use cell.textLabel.text
}
Usted puede obtener la célula utilizando [self.tableView cellForRowAtIndexPath:] y luego acceder a su propiedad textLabel.text, pero por lo general hay una mejor manera.
Normalmente ha rellenado su tabla en función de alguna matriz de modelos a la que tenga acceso su UITableViewController. Entonces, una mejor forma de manejar esto en la mayoría de los casos es tomar el número de fila de la celda que se seleccionó y usar eso para encontrar los datos asociados en su modelo.
Por ejemplo, digamos que su controlador tiene una gran variedad de objetos Buddy
, que tienen una propiedad name
:
NSArray *buddies;
Rellena esta matriz mediante la ejecución de una consulta o algo así. Luego, en tableView:cellForRowAtIndexPath:
se construye una celda de visualización de mesa basado en el nombre de cada compañero:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"BuddyCell"];
if (!cell) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"BuddyCell"] autorelease];
}
cell.textLabel.text = [buddies objectAtIndex:indexPath.row];
return cell;
}
Ahora, cuando el usuario selecciona una fila, que acaba de tirar el objeto de Buddy correspondiente de su matriz y hacer algo con él.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
Buddy *myBuddy = [buddies objectAtIndex:indexPath.row];
NSLog (@"Buddy selected: %@", myBuddy.name);
}
if (selected)
{
indicator.image = [UIImage imageNamed:@"IsSelected.png"];
[arrSlectedItem addObject:strselecteditem];
NSLog(@"-- added name is %@", strselecteditem);
}
else
{
indicator.image = [UIImage imageNamed:@"NotSelected.png"];
[arrSlectedItem removeObject:strselecteditem];
NSLog(@"--- remove element is -- %@", strselecteditem);
}
Si alguien tropieza con esto y se pregunta cómo hacer esto en el código rápida está por debajo. También recuerde usar un encuadernado opcional para desenvolver ese opcional y también evitar imprimir "Opcional (" Etiqueta de elemento golpeado ")".
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let cell = tableView.cellForRowAtIndexPath(indexPath)
// Unwrap that optional
if let label = cell?.textLabel?.text {
println("Tapped \(label)")
}
}
aquí lo que solía; muy simple
func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath){
if editingStyle == UITableViewCellEditingStyle.Delete
{
//create cellobj with indexpath for get it text
let cell = tableView.cellForRowAtIndexPath(indexPath)
let celltext = (cell?.textLabel?.text!)! as String
//do what ever you want with value
print((cell?.textLabel?.text!)! as String)
}
}
- 1. iPhone UITableViewCell: reposicionando la etiqueta de texto
- 2. ¿Cómo puedo obtener el valor del campo de texto de la etiqueta en iPhone sdk?
- 3. UITableView texto de la celda Color de etiqueta
- 4. Leer el texto de la imagen iPhone SDK
- 5. Etiqueta de celda de la tabla de iPhone desalineada
- 6. DOM/Javascript: obtener el texto después de la etiqueta
- 7. localizar la etiqueta de comenzar con el texto con jQuery
- 8. cambiando la posición de la etiqueta de texto detallada en la celda?
- 9. Jquery - cambie el texto de la etiqueta
- 10. Obtener texto de etiqueta internacionalizado sin etiqueta envoltorio de etiqueta
- 11. Ajuste Texto de la celda de color
- 12. Obtener el valor de la opción seleccionada (no de texto) desde desplegable con jQuery
- 13. Mostrar la etiqueta de texto para el botón de radio seleccionada en Jquery
- 14. Iphone sdk - Obtener texto localizado del archivo localized.strings específico
- 15. ¿Cómo ocultar el campo de texto con la etiqueta?
- 16. Obtener texto dentro de la etiqueta xml usando grep
- 17. ¿Cómo obtener el texto de la opción seleccionada de una selección usando jquery?
- 18. ¿Cómo puedo obtener el texto de la radio seleccionada en los grupos de radio
- 19. UITableViewCell cambio de color del texto de la fila seleccionada
- 20. Justificación en el texto de tableCell con OpenXML SDK 2.0
- 21. Alternar texto en la etiqueta de botón
- 22. Formateo de texto en la etiqueta WinForm
- 23. Devuelve el color de fondo de la celda seleccionada
- 24. Obtener texto de botón desde IBAction - iPhone
- 25. iPhone: modifique una celda seleccionada en didSelectRowAtIndexPath
- 26. UITableView ¿Detectar la celda seleccionada?
- 27. ¿Cómo obtener texto de cada celda de una tabla HTML?
- 28. Texto del centro en la celda de la tabla
- 29. Establecer el texto de la etiqueta de anclaje en Javascript
- 30. ¿Cómo configuro el color de una etiqueta de texto NSButtonCell?
que era lo que estaba tratando de hacer, pero yo no creía que la cosa fo NSArray. – lab12
Genial. De acuerdo con su pregunta, podría decir que esta sería probablemente una forma más limpia de lograr lo que estaba tratando de hacer. – cduhn