標籤:elf click pos eve 技術分享 text sele alt down
當UITextField文本改變時, 依據內容更新資料, 通過寫監聽事件就可以.
加入監聽:
[timesField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; // 監聽事件
監聽事件:
// 監聽改變button- (void) textFieldDidChange:(UITextField*) sender { // 常值內容 NSInteger times = [sender.text integerValue]; [_serviceNumList replaceObjectAtIndex:_servicePos withObject:[NSNumber numberWithInteger:times]]; // 總價 _totalPrice = (float)([_goodsList[_servicePos][@"Price"] floatValue]/100.0)*[[_serviceNumList objectAtIndex:_servicePos] integerValue]; [_totalPriceLabel setText:[NSString stringWithFormat:@"%0.1f", _totalPrice]];}
其餘UITextField屬性:
// 輸入框 UITextField *timesField = [[UITextField alloc] initWithFrame:CGRectMake(200*kViewRatio, 10*kViewRatio, 32*kViewRatio, 20*kViewRatio)]; // 位置大小 [timesField setBorderStyle:UITextBorderStyleRoundedRect]; //外框類型 NSAttributedString* timesText =[[NSAttributedString alloc] initWithString:[NSString stringWithFormat:@"%ld", (long)[[_serviceNumList objectAtIndex:row] integerValue]]]; // 設定文字 [timesField setAttributedText:timesText]; [timesField setFont:[UIFont systemFontOfSize: 12*kViewRatio]]; // 文字大小 [timesField setTextAlignment:NSTextAlignmentCenter]; // 文字位置 [timesField setDelegate:self]; // 限制長度 [timesField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; // 監聽事件 [itemView addSubview:timesField]; // 加入父視圖
IOS - 擷取UITextField的輸入文本