我要做的是使用字母表作为名称。在我的应用程序中,我有一个项目,用户可以创建一个新项目,此时名称增量为001,002等。我使用项目计数来增加名称。现在我需要做的是将项目名称增加为A,B,C等等,一旦我们点击11,名称将是AA。我仍然相当新于objective-c,我只需指向正确的方向,所以任何帮助都将非常感激。
到目前为止,我有四种格式供用户使用作为项目名称,我存储用户在NSUserDefaults中的选项,然后在项目创建期间用户使用switch语句,我在下面包含了switch语句和case 4将是按字母顺序排列的名称。再次感谢您的帮助。
NSNumber *samplePointCode = [Defaults objectForKey:@"defaultCode"];
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
NSNumber *baseNumber = [NSNumber numberWithInteger:[_Lefty.arrayOfSamplePoints count] + 1];
NSString *numberWithFormat;
switch ([samplePointCode intValue]) {
case 1:
[formatter setPaddingPosition:NSNumberFormatterPadBeforePrefix];
[formatter setPaddingCharacter:@"0"];
[formatter setMinimumIntegerDigits:3];
numberWithFormat = [formatter stringFromNumber:baseNumber];
newSamplePoint.name = numberWithFormat;
break;
case 2:
[formatter setPaddingPosition:NSNumberFormatterPadBeforePrefix];
[formatter setPaddingCharacter:@"0"];
[formatter setMinimumIntegerDigits:2];
numberWithFormat = [formatter stringFromNumber:baseNumber];
newSamplePoint.name = numberWithFormat;
break;
case 3:
[formatter setPaddingPosition:NSNumberFormatterPadBeforePrefix];
[formatter setPaddingCharacter:@"0"];
[formatter setMinimumIntegerDigits:1];
numberWithFormat = [formatter stringFromNumber:baseNumber];
newSamplePoint.name = numberWithFormat;
break;
case 4:
break;
default:
break;
}
更新了迄今为止的内容。
for (char a = 'a'; a <= 'z'; a++)
{
[alphabet addObject:[NSString stringWithFormat:@"%c", a]];
}
NSString *letter = [alphabet objectAtIndex:[baseNumber integerValue] - 1];
newSamplePoint.name = letter;