2012-06-04 14 views
6

Quiero desplegar lista como vista de lista en cuando hago clic en el botón desplegable y hago que la lista tenga algunos contenidos. entonces cualquier contenido que seleccione será texto para la etiqueta cualquiera me ayude. Muchas gracias.¿Cómo crear una lista desplegable sin usar UIPIckerviewcontroller en iPhone?

+0

posible duplicado de [vista de lista desplegable en iPhone] (http://stackoverflow.com/questions/3650525/dropdown-list-view-in-iphone) –

+0

súplicas Siga estos enlaces usted conseguirá hecho de que quiero también probé estos funcionan bien http://iphone-rahulvarma.blogspot.com/2011/06/customized-drop-down-list-in-iphone.html http://ameyashetti.wordpress.com/2010/09/26/drop-down-demo/Espero que esto ayude – james

+0

Eche un vistazo al control [this] (https://github.com/vicpenap/VPPDropDown). Es un menú de selección desplegable básico que puede usarse para enumerar opciones. – Bourne

Respuesta

1

Puede utilizar el pop-over para mostrar la lista.En pop-over puede crear tableview para mostrar la lista de elementos y cuando el usuario selecciona cualquier opción, se llamará a didSelectRowAtIndexPath, desde este método puede enviar el valor seleccionado y mostrar en la etiqueta.

Código en mainviewcontroller, donde desea desplegar desplegable.

if (m_OptionController !=nil) 
     { 
      [m_OptionController release]; m_OptionController = nil; 

     } 
     m_OptionController=[[OptionViewController alloc]init]; 
     [m_OptionController setTarget:self andSelector:@selector(displaySelectedOption:)]; 

     if(m_pPopOverController) 
     { 
      [m_pPopOverController dismissPopoverAnimated:YES]; 
      [m_pPopOverController release]; 
      m_pPopOverController=nil; 
     } 

     m_pPopOverController=[[UIPopoverController alloc]initWithContentViewController:m_OptionController]; 

     [m_pPopOverController setPopoverContentSize:CGSizeMake(thePopOverFrame.size.width, thePopOverFrame.size.height) animated:NO]; 
     [m_pPopOverController presentPopoverFromRect:CGRectMake(theButton.frame.origin.x,0,40,40) inView:self 
          permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 

OptionViewController es un UIViewController que contendrá UITableView.Populate UITableView con los datos (lista de opciones).

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if ([m_Target respondsToSelector:m_Selector]) { 
         [m_Target performSelector:m_Selector withObject:nil]; 
        } 
} 

No se olvide de fijar objetivo llamando a este método, por lo que cuando el usuario selecciona ninguna opción, correspondiente método en el mainviewcontroller se llama en la que desea valor seleccionado.

- (void)setTarget:(id)inTarget andSelector:(SEL)inSelector 
{ 
    m_Target = inTarget; 
    m_Selector = inSelector; 
} 
+0

muchas gracias –

Cuestiones relacionadas