Pregunta

Parece que no puedo obtener ningún tipo de comunicación entre mi controlador de vista principal y un controlador de vista de tabla que se muestra dentro de una vista de Popover (iPad).

Estoy configurando la vista de tabla dentro de un controlador de navegación de la manera habitual:

// create popover
    if (self.popoverController == nil) {

    filesViewController = [[[MyTableViewController alloc] initWithFiles:fileList] autorelease];

    UINavigationController *navCtrl = [[[UINavigationController alloc] initWithRootViewController:filesViewController] autorelease];

    self.popoverController = [[UIPopoverController alloc] initWithContentViewController:navCtrl];

        self.popoverController.delegate = self;

        // resize popover
        self.popoverController.popoverContentSize = CGSizeMake(320.0, 44 + [fileList count] * 44);
    }

Todo funciona bien, y estoy pasando una matriz de nombres de archivos (filelista) a la vista de la tabla, que se mantiene en la vista de la tabla como una matriz llamada Listoffiles. La vista de la tabla muestra los nombres de archivo, y cuando el usuario selecciona uno, quiero pasar ese nombre de archivo al controlador de vista principal. Sin embargo, no puedo hacer que ninguna comunicación regrese del método DidSelectroWatIdExpath de la vista de la tabla al VC principal. He probado todo tipo de puntos de venta en varias direcciones, e intenté crear un nuevo objeto en DidSelectrowatIndExpath para manejar el nombre de archivo que proviene de la vista de la tabla. Puedo pasar el nombre de archivo al nuevo objeto, pero cuando trato de enviarlo al VC principal, es nulo nuevamente. Todo lo que envío a mi VC principal mientras que Popover está activo aparece como nulo.

    - (void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController {

    NSLog(@"%@", handler.addressForImageFile);

    self.popoverController = nil;
    [self.popoverController release];
}

¿Hay alguna razón por la cual mi VC principal no obtendrá nada más que objetos nulos desde mi vista de mesa? He pasado días probando muchas cosas diferentes. Siento que hay una brecha fundamental en mi conocimiento de cómo funciona el popovers. ¿Seguramente hay una manera simple de enviar una cadena de regreso a mi VC principal cuando se selecciona desde la vista de la tabla?

¡Muchas gracias por cualquier ayuda!

¿Fue útil?

Solución

Hay una manera mucho mejor de hacer esto, pero dependiendo de la meta de pasar la cuerda, una forma podría ser usar nsuserDefaults.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top