对textfield的键盘改造成滚动选择器而不是输入键盘

占坑

 

 

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{

    

//    DebugLog(@"should编辑:%ld",(long)textField.tag);

    [self createPikerView:textField.tag];

    return YES;

}

 

- (void)textFieldDidEndEditing:(UITextField *)textField{

    UserObject *meObjTmp = [NSKeyedUnarchiver unarchiveObjectWithFile:[NSString documentPathWith:MY_INFORMATION]];

    DetailChangedType changedType = kDetailChangedTypeBirth;

    

    if (textField.tag == kPersonAttributeBirthday) {

        generalStr = [NSString stringWithFormat:@"%lu-%lu-%lu",

                               (unsigned long)[NSString getYearFromDate:datePicker.date],

                               (unsigned long)[NSString getMonthFromDate:datePicker.date],

                               (unsigned long)[NSString getDayFromDate:datePicker.date]];

//        self.detailFld.text = generalStr;

        self.detailFld.text = [NSString stringWithFormat:@"%@", generalStr];

    }else {

        if (textField.tag == kPersonAttributeHeight) {

            self.detailFld.text = [NSString stringWithFormat:@"%@cm", [generalStr componentsSeparatedByString:@" "][0]];

        }else if (textField.tag == kPersonAttributeWeight){

            self.detailFld.text = [NSString stringWithFormat:@"%@kg", [generalStr componentsSeparatedByString:@" "][0]];

        }else {

            self.detailFld.text = [generalStr componentsSeparatedByString:@" "][0];

        }

    }

    

    switch (textField.tag) {

        case kPersonAttributeSex:{

            //

            NSString *sexString = textField.text;

            if ([generalStr isEqualToString:LIVALL_LocalizedString(@"Livall_299", @"女")]) {

                sexString = @"0";

            }else {

                sexString = @"1";

            }

            [[NSUserDefaults standardUserDefaults] setObject:sexString

                                                      forKey:PersonAttributeSex];

            meObjTmp.gender = sexString;

            changedType = kDetailChangedTypeGender;

            break;

        }

 

       

        default:

            break;

    }

    

    if (![self respondsToSelector:@selector(DetailCellDelegateDataIsChanged:andType:)]) {

        [self.delegate DetailCellDelegateDataIsChanged:meObjTmp andType:changedType];

    }

}

 

    generalPicker = [[UIPickerView alloc] init];

 

    if (tag == kPersonAttributeBirthday) {

        self.detailFld.inputView  = datePicker;

    }else {

        self.detailFld.inputView  = generalPicker;

    }

- (void)createPikerView:(NSInteger)tag{

    switch (tag) {

        case kPersonAttributeSex:{

            //

            dataSourceArray = [[NSMutableArray alloc] initWithObjects:LIVALL_LocalizedString(@"Livall_299", @"女"),

                               LIVALL_LocalizedString(@"Livall_298", @"男"),

                               nil];

            break;

        }

    

    generalPicker.delegate   = self;

    generalPicker.dataSource = self;

//    self.detailFld.inputView = generalPicker;

    self.detailFld.delegate  = self;

    [self.detailFld addDoneOnKeyboardWithTarget:self

                                         action:@selector(doDoneBtnClicked:)];

    

    [self selectRowPickerView:tag];

}

 

posted @ 2016-02-16 11:43  LazVy  阅读(139)  评论(0编辑  收藏  举报