10

He hecho algunas excavaciones y parece que no puede obtener nada útil.UINavigationBar con botones como título.

Lo que estoy tratando de hacer es bastante básico, pero no estoy seguro de si su es:

1. Una forma más fácil

2. O si Apple va a darle un "no no "

Tengo una vista que se controla a través de UINavigationController (obviamente desde el título de esta publicación) y tiene un objeto/vista.

La vista ya está bastante congestionada con el contenido. No está realmente congestionado, pero no hay más espacio para acomodar las cosas cómodamente.

El usuario debe poder calificar este objeto utilizando un número diferente de inicios (1-5).

La forma ideal en que vería esto suceder sería tener botones de 5 estrellas (con imágenes por supuesto) establecidos en la posición del título UINavigationBar (centrado).

Así que ser algo como esto:

___________________________________ 
|         | 
| Back  * * * * *  Action | 
|_________________________________| 
|         | 
|   view down here   | 
|         | 

Cualquier entrada sería muy muy apreciado y, como siempre, gracias por su tiempo!

+8

+1 para el arte ASCII :) –

Respuesta

21

justo Usted puede crear su widget personalizado con la funcionalidad de 5 estrellas y añadirlo a la navigationItem

self.navigationItem.titleView = customWidget; 
+0

Ah lo entiendo. – random

+0

¡Esta es una mejor respuesta! – Legolas

1

En la parte superior de mi cabeza, mi sugerencia sería intentar UIToolbar y configurarla en la parte superior, y hacer que se vea como navigationBar. Es bastante fácil implementarlo y agregarle UIButtons y acciones.

+0

¿Cree que posiblemente creando una vista, añadiendo la barra de herramientas con los botones y luego configurar el título de UInavigationController para esa vista. – random

+0

Puede crear una vista, no usar un 'UINavigationBar' (y no necesita usar los métodos' navigationController.title'), y usar 'UIToolbar' en su lugar con el tamaño de marco (0,0,320,44), y agregar 'UIButtons' como subvista. – Legolas

+0

Gotcha, Ill pruébalo. – random

1
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
[button addTarget:self 
      action:@selector(chooseDataCenter:) 
forControlEvents:UIControlEventTouchUpInside]; 
[button setTitle:@"点我选择数据中心>" forState:UIControlStateNormal]; 
button.frame = CGRectMake(0, 0, 160.0, 40.0); 

self.navigationItem.titleView =button; 
Cuestiones relacionadas