objective-c“自动添加按钮”

时间:2011-12-07 23:47:37

标签: objective-c cocoa-touch

我需要任何想法。 这就是问题。我正在解析一个xml文件,其中包含图像的url,按钮名称,链接到另一个UIwebview或视图的URL等等......这些都很重要。我需要的是什么;如果读取按钮的名称,屏幕上必须自动添加一个新按钮,并带有自己的图像和链接。我的意思是如果在xml我有6个标签与前面提到的信息,在屏幕上必须有6个带图像和链接的按钮。如果在xml中存在更多,它们必须存在于屏幕或uiwebview中。

我感谢您的帮助或想法!!

1 个答案:

答案 0 :(得分:3)

好吧,您可以先使用NSXMLParser来解析XML并获取按钮的属性。

NSXMLParser Class Reference

一旦你知道你需要多少个标签,就可以迭代:

for (int i = 0; i < numTags; i++) {
    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    // The tag is so when clicked, you can determine which one was pressed
    // It would help to have your links stored in an NSArray, so you can pull
    // them out by index.
    button.tag = i; 
    [button setTitle:buttonName forState:UIControlStateNormal];
    [button addTarget:self action:@selector(openButtonLink:) forControlEvents:UIControlEventTouchDown];
    [button setImage:buttonImage forState:UIControlStateNormal];
    button.frame = ...; // How do you want your buttons laid out?
    [someView addSubview:button];
}

我还建议查看UIButton的课程参考:

UIButton Class Reference