iPhone: αντικαθιστώντας την άποψη ενός κυττάρου με UITextField

ψήφοι
0

Είμαι βασικά προσπαθώ να προσθέσετε ένα UITextField σε UITableViewCell κατά TableView: commitEditingStyle: forRowAtIndexPath :. Στο ένθετο, θέλω να προσθέσω μια UITextField πάνω από το υπάρχον κύτταρο.

Μπορώ να ρυθμίσω το πεδίο κειμένου με κάτι σαν αυτό:

-(void) setUpIndexField {
    inputField = [[UITextField alloc] init];
    inputField.textAlignment = UITextAlignmentCenter;
    inputField.borderStyle = UITextBorderStyleRoundedRect;    
    inputField.keyboardType = UIKeyboardTypeNamePhonePad;
    inputField.delegate = self;
 }

Στη συνέχεια, το commitEditingStyle, έχω κάτι όπως:

- (void)tableView:(UITableView *)tv
    commitEditingStyle:(UITableViewCellEditingStyle)editingStyle 
    forRowAtIndexPath:(NSIndexPath *)indexPath 
{
    NSInteger row = [indexPath row];
    if (editingStyle == UITableViewCellEditingStyleInsert) {
    if (row == 0) {
        UITableViewCell *cell = [tv cellForRowAtIndexPath:indexPath];
        inputField.frame = [tv cellForRowAtIndexPath:indexPath].frame;
        [cell.contentView addSubview:inputField];
        [inputField becomeFirstResponder];
        return;
    }
// more code etc.
}

Όταν κάνω κλικ στο στοιχείο πρόσβασης Insert (+), το πεδίο κειμένου πράγματι να plopped στην οθόνη, αλλά όταν δεν κοντά στο κύτταρο που είναι το κλικ. Δεν πηγαίνει μακριά σε ένα τυχαίο μέρος του UIView, όχι το πραγματικό κύτταρο για την indexPath στο οποίο έγινε κλικ το +.

Insight για το πού πήγα στραβά και πώς μπορώ να τοποθετήσετε το UITextField πάνω στο κελί όπου το + έγινε κλικ θα ήταν ιδανικό.

Δημοσιεύθηκε 23/02/2009 στις 22:42
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
1

Έχετε τη ρύθμιση του πλαισίου της inputFieldστο πλαίσιο του κελιού που δεν θα κάνει ό, τι θέλετε. Προβολές μέσα στο κύτταρο χρησιμοποιεί το άνω αριστερά του πλαισίου ως 0,0. Πλαισίου πεδίο κειμένου σας θα πρέπει να είναι:

inputField.frame = CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height);

Δεδομένου ότι είναι σε σχέση με το superview που θα τοποθετήσετε το πεδίο κειμένου έτσι ώστε να καλύπτει πλήρως τις άλλες απόψεις σε αυτό το κελί.

Απαντήθηκε 23/02/2009 στις 22:50
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more