我正在开发计算器, 我使用发送者按钮标记值从按钮获取数字..用户将无法输入两个以上
文本字段中的数字值
即34 + 22,23 + 22这样他就能进入,
234 + 234就像他无法在文本字段中输入值一样。 因为我使用
-(IBAction)numberpress:(UIButton *)sender //number select
{
NSString *number = sender.currentTitle;
self.caldisplay.text = [self.caldisplay.text stringByAppendingString:number];
NSLog(@"%@ number is caldis",self.caldisplay.text);
}
我是怎么做到的,请帮助我...
答案 0 :(得分:1)
试
-(IBAction)numberpress:(UIButton *)sender //number select
{
NSString *number = sender.currentTitle;
NSString *calculatingString = nil;
if (self.caldisplay.text.length >= 2) {
NSString *lastTwoChar = [self.caldisplay.text substringFromIndex:[self.caldisplay.text length] - 2];
if ([lastTwoChar integerValue] >= 10) { // last char is content two number
if ([number integerValue] > 0 || [number isEqualToString:@"0"]) {
// invalid case. donothing here
calculatingString = self.caldisplay.text;
} else {
calculatingString = [self.caldisplay.text stringByAppendingString:number];
}
} else {
calculatingString = [self.caldisplay.text stringByAppendingString:number];
}
} else {
calculatingString = [self.caldisplay.text stringByAppendingString:number];
}
// check valid input
if ([self calculate:calculatingString] > 100) {
// invalid case. donothing here
} else {
self.caldisplay.text = calculatingString;
}
NSLog(@"%@ number is caldis",self.caldisplay.text);
}
- (NSInteger)calculate:(NSString *)input {
// you need to wite code calculating string here
// example code to calculate only operator '+'
NSArray *operands = [input componentsSeparatedByString:@"+"];
NSInteger result = 0;
for (NSString *operand in operands) {
result = result + [operand integerValue];
}
return result;
}
答案 1 :(得分:0)
您可以像这样使用
<?php
$Arr = ('JDF1','JDF2','UDF1','JDF3','UDF3');
//initialization ;)
$i = 0;
foreach ($Arr as $key) {
$i ++;
echo "At position {$i} I have Key {$key}.<br />";
}
?>