He estado por todas partes, parece que el UITableView
con un problema de fondo estático está bien documentado, pero nadie con una solución directa? edificio Im mi TableViews
totalmente en código, como esto:iPhone UITableView PlainStyle con imagen de fondo personalizada - hecho "completamente" en el código
UIViewController *tableViewController = [[TableViewController alloc] init];
navigationController = [[UINavigationController alloc]
initWithRootViewController:tableViewController];
[tableViewController release];
[window addSubview:navigationController.view];
La ventana es mi principal UIWindow
acumulación para mí en el delegado de la aplicación. A partir de ahora necesito construir unos pocos TableViews
diferentes (controlados por navigationController
), algunos con fetchedResultsControllers
, celdas personalizadas y más. Prefiero hacer esto completamente en código, sin usar plumillas, ya que esto daría lugar a que la personalización se extienda entre el código y el IB o que tenga que crear y mantener más de 6 nib.
Simplemente no puedo encontrar un ejemplo en el que una clase tableViewController
establezca su propia imagen de fondo. Si hago esto dentro de una de mis TableViews
(que se extiende UITableViewController
):
self.tableView.backgroundColor = backgroundColor;
Yo, por supuesto, obtener los antecedentes del tableView de color (los colores que dicho sea de paso del así la célula, pensar de la célula hereda el color de la tableView
?) pero deseo tener una imagen de fondo estática sobre la cual mis celdas se deslizan arriba y abajo encima. No es una "imagen de fondo" que se desliza hacia arriba y hacia abajo con los gestos de los usuarios. Exactamente lo que ofrece tableView de GroupedStyle, pero en un TableView :) de PlainStyle y hecho usando código, no IB.
Supongo que tengo que borrar el color de fondo de la vista de tabla, luego establecer el color de las celdas al configurarlas para que no se vuelvan transparentes. ¿Y luego de alguna manera "escabullir" una imagen de fondo debajo de la vista tableView desde dentro de la instancia de tableView?
Como voy a hacer esto, la mejor solución sería poder hacer esto en viewDidLoad o cualquier otra función dentro de mi TableViewController, para mantener toda mi personalización en un solo lugar.
Espero que alguien me puede ayudar, estoy todo en 'Google' :) ¡Gracias!
Gracias Coneybeare, esto parece seguir la lógica que he visto en Semillas que incorporan una imagen personalizada, construir vista genérica, poner imageview y una tableView su interior. Obtengo un comportamiento extraño:/ Implementé cellForRowAtIndexPath: y también tiene una variable local llamada "tableView". Esto provoca que el compilador advierta "la declaración local de 'tableView' oculta la variable de instancia". Luego intenté cambiar el nombre de la variable a tableViewLocal, pero la advertencia persiste. -continue ... – RickiG
También al cargar la vista (como se describe en mi pregunta) se cuelga cuando agrego el [self.tableView addSubview: self.tableView]; No se supone que es: [self.view addSubview: self.tableView]; esto compila y funciona, pero solo está la imagen de fondo, ¿no hay tablas? Creo que el enfoque es sólido, pero hay algo que me falta :) Thans nuevamente :) – RickiG
Cambiaría todos los argumentos "tableView" en las firmas de métodos para ser theTableView, y dejar self.tableView como está. El fallo fue un error tipográfico de mi parte, debería haber sido self.view add ... (corregido ahora) – coneybeare