spostarsi tra UitextView
Domanda
Dopo diversi tentativi, ho deciso di scrivere perché non riesco proprio a capire come farlo funzionare. Mi riferisco al cruciverba. Quello che ho fatto è questo:
- (void) viewDidLoad{
int move = 15;
int h = 50;
for (int i = 0; i < 416; i++){
move = move + 36;
fieldUno = [[UITextField alloc] init];
fieldUno.tag = i;
[fieldUno viewWithTag:i].frame = CGRectMake(move, h, 35, 35);
[fieldUno setBackgroundColor:[UIColor purpleColor]];
[fieldUno setTextAlignment:UITextAlignmentCenter];
[fieldUno setFont:[UIFont fontWithName:@"Times New Roman" size:30]];
[fieldUno setDelegate:self];
[self.view addSubview:[fieldUno viewWithTag:i]];
[fieldUno release];
if (i == 25) h = h + 36, move = 15;
if (i == 51) h = h + 36, move = 15;
if (i == 77) h = h + 36, move = 15;
if (i == 103) h = h + 36, move = 15;
if (i == 129) h = h + 36, move = 15;
if (i == 155) h = h + 36, move = 15;
if (i == 181) h = h + 36, move = 15;
if (i == 207) h = h + 36, move = 15;
if (i == 233) h = h + 36, move = 15;
if (i == 259) h = h + 36, move = 15;
if (i == 285) h = h + 36, move = 15;
if (i == 311) h = h + 36, move = 15;
if (i == 337) h = h + 36, move = 15;
if (i == 363) h = h + 36, move = 15;
if (i == 389) h = h + 36, move = 15;
Ma ora non so come fare il prossimo a Reading, con diventando Firstresponder. Volevo fare qualcosa di abbastanza semplice e puoi selezionare solo la prima casella di testo. Quindi fai un controllo su due array diversi per vedere se il risultato è sbagliato o no, ma questo è già molto più semplice.
Quali metodi dovrei chiamare? Pensa ad esempio se il tag 1 a tag 5 sarà una parola e taggerà un altro 7 a 12, dovrò fare di diverso se, per ogni campo? E se dovessi scrivere verticalmente? Non so se sono sulla strada giusta, mi è stato consigliato di usare Draw Rect ma lo seguirò in questo modo
Mi scuso se il codice è un po 'incasinato.
Non sapevo come altro
Soluzione
Non sono del tutto sicuro di quello che stai chiedendo, ma prenderò comunque una pugnalata a rispondere. Puoi aggiungere [nextTextField becomeFirstResponder];
al metodo delegato textFieldDidEndEditing
Ciò porta l'utente a qualsiasi campo di testo pensi che dovrebbe essere il prossimo.