0

我希望当用户在文本文件中输入错误的值时,它会显示警报,并使文本字段为空,并且按钮标题为空。在我的代码中,文本字段为空,但按钮没有获得空值

下面是我的代码

     if (monthText>totalnumber) {
    UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"Warning" message:@"Value Must Be Less than total number of dogs " delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alert show];
    [alert release];

    NSString *titleMonth =@"0";
    [cereniaButton setTitle:@"" forState:UIControlStateNormal];






    cereniaTextField.text=@"";


  }


int year=12;
int monthButtonTitle=monthText*year;
NSString *titleMonth =[NSString stringWithFormat:@"%d",monthButtonTitle];
[cereniaButton setTitle:titleMonth forState:UIControlStateNormal];
4

4 回答 4

0

如果您直接分配喜欢会发生什么

[btn setTitle:@"" forState:UIControlStateNormal];

于 2012-06-06T10:29:40.003 回答
0

将标题设置为按钮后写入此行

[self.view setNeedsDisplay];
于 2012-06-06T10:39:12.147 回答
0

您正在重置标题,但在您的标题之后会出现 ripopolate。

尝试

if (monthText>totalnumber) {
    //...yourcode...

   return;
}

让我知道

于 2012-06-06T10:46:49.690 回答
0

可能是您缺少将按钮与文件所有者连接,试试这个:

  1. 将 IBOutlet 声明为 .h 文件中的按钮,由 xib 创建的按钮。
  2. @synthesize btn in .m
  3. 将按钮 (btn) 连接到 xib 中的文件所有者。并使用这个委托:

-(void)textFieldDidEndEditing:(UITextField *)textField

 int txtValue = [textField.text intValue];
 if(txtValue < 10)


     btn.titleLabel.text = [NSString stringWithFormat:@"%d",txtValue];
        else 
        {
            btn.titleLabel.text = [NSString stringWithFormat:@""];
        } 
    }
    - (BOOL)textFieldShouldReturn: (UITextField *)textField 
    {
        [textField resignFirstResponder];
        return YES;
    }
于 2012-06-06T10:52:19.137 回答