一个让我不舒服的自定义键盘

自定义的一个键盘输入

根据需求做,真的好恶心,但是仔细研究一下蛮简单的
刚开始做的时候,要关闭原生键盘的弹出
self.sellingPricetext.inputView = [[UIView alloc] initWithFrame:CGRectZero];
[self.sellingPricetext setDelegate:self];
self.originalPriceText.inputView = [[UIView alloc] initWithFrame:CGRectZero];
[self.originalPriceText setDelegate:self];

键盘输入的界面我是用xib画的,简单,但是后期改动麻烦
xib搭建

输入的时候需要用NSMutableString来接受输入的值
self.string1 = [NSMutableString string];
self.string2 = [NSMutableString string];

这些是主要代码,逻辑并不复杂,刚开始做的时候是不知道该如何下手

  • (IBAction)chooseTheDigital:(UIButton *)sender {

    if ([self.keybordType isEqualToString:@”0”]) {
    [self showHint:@”请选择出售价格或者原价”];
    return;
    }

    if ([self.keybordType isEqualToString:@”1”]) {
    [self.string1 appendString:sender.currentTitle];
    self.sellingPricetext.text = self.string1;//原价
    }

    if ([self.keybordType isEqualToString:@"2"]) {
    
    [self.string2 appendString:sender.currentTitle];
    self.originalPriceText.text = self.string2;//出售价
    }
    

}

  • (IBAction)dele:(UIButton *)sender {

    if ([self.keybordType isEqualToString:@”0”]) {
    [self showHint:@”没输入原价或者出售价”];
    return;
    }

    if ([self.keybordType isEqualToString:@”1”]) {
    if ([self.sellingPricetext.text isEqualToString:@”“]) {
    [self showHint:@”请输入原价”];

    }else{
    [self.string1 deleteCharactersInRange:NSMakeRange(self.string1.length-1, 1)];
    self.sellingPricetext.text = self.string1;
    }
    

    }

    if ([self.keybordType isEqualToString:@”2”]) {
    if ([self.originalPriceText.text isEqualToString:@”“]) {
    [self showHint:@”请输入出售价”];

    }else{
        [self.string2 deleteCharactersInRange:NSMakeRange(self.string2.length-1, 1)];
        self.originalPriceText.text = self.string2;
    }
    

    }

}
- (IBAction)yesBuy:(UIButton *)sender {
sender.selected = !sender.selected;

if (sender.selected) {
    _yesBuy.selected = YES;
    _noBuy.selected = NO;
    self.buyType = @"1";
    self.originalPriceText.userInteractionEnabled = YES;
}else{
    _yesBuy.selected = NO;
}

}

  • (IBAction)noBuy:(UIButton *)sender {
    sender.selected = !sender.selected;
    if (sender.selected) {
    _noBuy.selected = YES;
    _yesBuy.selected = NO;
    self.buyType = @”0”;
    self.originalPriceText.text = @”“;
    self.originalPriceText.userInteractionEnabled = NO;
    self.string2 = [[NSMutableString alloc] init];
    }else{
    _noBuy.selected = NO;
    }
    }

  • (IBAction)priceSure:(UIButton *)sender {

    if ([self.sellingPricetext.text isEqualToString:@”“]) {
    [self showHint:@”请输入原价”];
    return;
    }

    if ([self.sellingPricetext.text floatValue] < [self.originalPriceText.text floatValue]) {
    [self showHint:@”出售价格不能大于原价”];
    return;
    }

    if ([self.buyType isEqualToString:@”1”]) {
    if ([self.originalPriceText.text isEqualToString:@”“]) {
    [self showHint:@”请输入出售价”];
    return;
    }

    if ([self.sellingPricetext.text isEqualToString:@""]) {
        [self showHint:@"请输入原价"];
        return;
    }
    
    [self.sellingPriceBtn setTitle:self.originalPriceText.text forState:UIControlStateNormal];
    [self.sellingPriceBtn setTitleColor:[UIColor colorWithRed:234/255.0 green:102/255.0 blue:135/255.0 alpha:1.0] forState:UIControlStateNormal];
    

    [self hiddenPasswordView];
    }

    if ([self.buyType isEqualToString:@”0”]) {

        [self hiddenPasswordView];
    

    // [self.sellingPriceBtn setTitle:self.sellingPriceBtn.titleLabel.text forState:UIControlStateNormal];
    [self.sellingPriceBtn setTitle:@”不支持购买” forState:UIControlStateNormal];
    [self.sellingPriceBtn setTitleColor:[UIColor colorWithRed:234/255.0 green:102/255.0 blue:135/255.0 alpha:1.0] forState:UIControlStateNormal];
    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值