我的UITextField存在问题
我希望用户输入日期以运行通知,我在.m
中使用它 [dateComponent setWeekday:1]; // For sunday
[dateComponent setHour:timeHClass];
[dateComponent setMinute:timeMClass];
和.h
@property (retain, nonatomic) IBOutlet UITextField *timeHClass;
@property (retain, nonatomic) IBOutlet UITextField *timeMClass;
但它向我显示了这个警告:
incompatible pointer to integer sending 'UiTextField*__strong' to parameter of type 'NSInteger' (aka 'long')
答案 0 :(得分:0)
你应该这样做:
[dateComponent setHour:[timeHClass.text integerValue]];
[dateComponent setMinute:[timeMClass.text integerValue]];
您希望在字段中输入文本并将其与日期组件一起使用。
说明:timeHClass
对象是UITextField
,因此您要访问它的text
属性,即NSString
个对象,并将其转换为{{ 1}}价值。您还应确保文本字段为数字。
答案 1 :(得分:0)
您正在将类的UITextField属性设置为小时和分钟组件。这些字段调用整数,就像使用[dateComponent setWeekday:1];
一样。
答案 2 :(得分:0)
您正尝试将指向UITextField *
对象的指针作为参数发送,而该参数应该是NSInteger。尝试:
[dateComponent setHour:[timeHClass.text integerValue]];
但要非常小心这种类型的转换,用户可能会输入您不想要的内容。您必须事先检查输入文本以避免不可预测的行为。
答案 3 :(得分:0)
您必须获取文本字段的内容,而不是文本字段本身:
[dateComponent setWeekday:1]; // For sunday
[dateComponent setHour:[timeHClass.text integerValue]];
[dateComponent setMinute:[timeMClass.text integerValue];