如何使用存储在NSArray中的位置数据创建图像和标签

时间:2010-12-14 06:18:57

标签: iphone objective-c

我必须使用代码(cgrectmake)创建一个2images和3个标签,我有X位置,y位置,宽度和高度都存储在数组中(我已经从Web服务检索)我如何创建图像和标签可以帮助我任何人

3 个答案:

答案 0 :(得分:2)

您可以将数组的元素与NSString componentsJoinedByString 类方法一起加入:

NSString myString = [myNSArray componentsJoinedByString:@"x"];

其中 x 是您希望在每个数组元素之间显示的字符。


已编辑添加

所以在新添加的代码中,如果这些是标签值:

<强> lbl = @"zero"
lbl1 = @"one"
lbl2 = @"two"

如果你这样做,你想和空格角色一起加入它们:

NSString *temp = [labelArray componentsJoinedByString:@" "];
NSLog(@"temp = %@", temp);

然后这将被记录:

<强> zero one two


已编辑以进一步添加

如果你试图将标签值连接在一起制作xml元素,那么你可能会这样做:

NSString *joinedElements = [labelArray componentsJoinedByString:@"</label><label>"];
NSString *temp = [NSString stringWithFormat:@"<label>%@</label>", joinedElements];
NSLog(@"temp = %@", temp);

然后这将被记录:

<label>zero</label><label>one</label><label>two</label>

答案 1 :(得分:0)

大多数对象都有一个-description方法,它返回对象的字符串表示形式:

- (NSString *)description;

例如:

NSArray *array = [NSArray arrayWithObjects:@"The", @"quick", @"brown", @"fox", nil];
NSLog(@"%@", array); // prints the contents of the array out to the console.
NSString *arrayDescription = [array description]; // a string

知道你想用字符串做什么会有所帮助(你将如何使用字符串)。另外,你在数组中有什么样的对象?

在这种情况下,马修的回答是一种可能性。另一种可能是使用NSMutableString并附加单个项目,如果您需要控制字符串的创建方式:

NSMutableString *string = [NSMutableString string];
if ([array count] >= 3) {
    [string appendString:[array objectAtIndex:0]];
    [string appendFormat:@"blah some filler text %@", [array objectAtIndex:1]];
    [string appendString:[array objectAtIndex:2]];
}

答案 2 :(得分:0)

可能对您有用。  

NSString *str;

str = [arrayName objectAtIndex:i(Index NO)];

通过这个很容易,你可以从数组中访问对象。您可以通过这种方式获取任何类型的对象,只有接收对象类型在左侧更改。

最好的运气。