Video: Cómo hacer tablas y gráficas en excel desde un celular android o ios? 2025
Puede llegar un momento en que necesite mostrar el contenido de la celda en su aplicación iOS. Para mostrar el contenido de la celda, su delegado recibe el mensaje tableView: cellForRowAtIndexPath. Agregue este método a DestinationController. metro.
- (UITableViewCell *) tableView: (UITableView *) tableView cellForRowAtIndexPath: (NSIndexPath *) indexPath {static NSString * CellIdentifier = @ "DestinationCell"; UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier]; NSDictionary * destinationData = self. destinationsArray [indexPath. fila]; NSAttributedString * attributedString = [[NSAttributedString alloc] initWithString: destinationData [@ "Nombre de Destino"] atributos: @ {NSFontAttributeName: [UIFont systemFontOfSize: 17. 0f], NSForegroundColorAttributeName: [UIColor whiteColor]}]; celda. textLabel. attribuText = attributeString; devolver celda;}
Ves que una de las primeras cosas que haces es determinar si hay celdas que puedas usar. Puede recordar que aunque una vista de tabla puede mostrar bastantes filas a la vez en la pantalla del iPad, la mesa en sí misma puede contener mucho más.
Sin embargo, una tabla grande puede consumir mucha memoria si se crean celdas para cada fila. Afortunadamente, las vistas de tabla están diseñadas para reutilizar celdas. A medida que las celdas de una vista de tabla se desplazan fuera de la pantalla, se colocan en una cola de celdas disponibles para su reutilización.
Si el sistema tiene poca memoria, la vista de tabla se deshace de las celdas en la cola, pero mientras tenga algo de memoria disponible, se mantiene unida a ellas en caso de que quiera volver a utilizarlas.
Crea una cadena para usar como un identificador de celda para indicar qué tipo de celda está usando:
NSString estático * CellIdentifier = @ "DestinationCell";
Es fundamental que el CellIdentifier y el campo Identificador de la celda Prototype en el Paso 18 sean los mismos. Si no lo son, no obtendrás la celda del prototipo transparente que especificaste en el guión gráfico.
Las vistas de tabla admiten múltiples tipos de celdas, lo que hace que el identificador sea necesario. En este caso, solo necesita un tipo de celda, pero a veces puede desear que más de una acomode celdas con diferentes diseños y formatos. Por ejemplo, si solo algunas celdas deberían tener un triángulo de revelación, probablemente usaría dos prototipos, uno con y sin el triángulo de revelación.
Solicita a la vista de tabla un objeto de célula reutilizable específico enviándole un dequeueReusableCellWithIdentifier: message:
UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier: CellIdentifier];
Esto determina si las celdas del tipo que desea están disponibles. Si no hay celdas, este método creará una celda utilizando el identificador de celda que especificó. Ahora tiene una celda de vista de tabla que puede regresar a la vista de tabla.
Tiene varias opciones sobre cómo formatear la celda de Vista de tabla. Aunque va a utilizar UITableViewCellStyleDefault, puede elegir entre una serie de estilos diferentes, enumerados de la siguiente manera (las palabras clave en el menú emergente Estilo en la pestaña Atributos del Creador de interfaces se muestran entre corchetes):
-
UITableViewCellStyleDefault: Le da una celda simple con una etiqueta de texto (negra y alineada a la izquierda) y una vista de imagen opcional. [Básico]
-
UITableViewCellStyleValue1: le da una celda con una etiqueta de texto negra alineada a la izquierda en el lado izquierdo de la celda y una etiqueta de texto alineada a la derecha con texto gris más pequeño en el lado derecho. (La aplicación Configuración usa este estilo de celda.) [Detalle derecha]
-
UITableViewCellStyleValue2: le da una celda con una etiqueta de texto azul alineada a la derecha en el lado izquierdo de la celda y una etiqueta de texto negra alineada a la izquierda a la derecha lado de la celda. [Detalle izquierdo]
-
UITableViewCellStyleSubtitle: le da una celda con una etiqueta de texto alineada a la izquierda en la parte superior y una etiqueta de texto alineada a la izquierda debajo de ella en texto gris más pequeño. (La aplicación de Música usa celdas de este estilo.) [Subtítulo]
Con el formato fuera del camino, usted configura las Propiedades de etiqueta que le interesan.
Extrae el nombre para cada destino que Se almacenó accediendo a DestinationName en cada diccionario de Destino. Para ello, acceda al diccionario en el array de destinos (guardado) correspondiente a las secciones y la fila en indexPath, que contiene la información de sección y fila en un único objeto.
Para obtener la fila o la sección de un NSIndexPath, solo tiene que invocar su método de sección (indexPath. Section) o su método de fila (indexPath. Row), cualquiera de los cuales devuelve un int:
NSDictionary * destinationData = destinationsArray [indexPath. fila];
A continuación, cree una cadena atribuida, que puede administrar cadenas de caracteres y atributos, como fuentes, colores e incluso kerning:
NSAttributedString * attributedString = [[NSAttributedString alloc] initWithString: destinationData [@ "Destination & # x200B; Name "] atributos: @ {NSFontAttributeName: [UIFont systemFontOfSize: 17. 0f], NSForegroundColorAttributeName: [UIColor whiteColor]}];
Ahora, use esta cadena atribuida para formatear la etiqueta de texto de la celda:
celda. textLabel. attribuText = attributeString;
Finalmente, devuelva la celda formateada con el texto que necesita para mostrar en esa fila:
celda de devolución;
