ios - XCode:以编程方式添加具有特定名称和动画的多个按钮

标签 ios objective-c xcode programmatically-created

我刚刚读了这篇关于 adding buttons with a loop programmatically 的文章。

我想做同样的事情,但是为每个元素指定一个名称,并以相同的方式为它们设置动画。这是个好主意,还是我应该为每个按钮复制同一行代码?

此外,我想从名称列表(大于四个)中添加多个按钮(假设四个)并随机选择它们。问题是,我需要正确命名它们并提取与每个名称关联的图像。有什么想法吗?

感谢社区!

最佳答案

正如我所见,您应该使用按钮信息数组创建一个属性列表(.plist) - 对于每个按钮,将有要显示的文本、要显示的图片和操作(方法名称或其他内容)。 您可以在 [0, [buttonArray length]] 范围内生成四个不同的随机数,然后在循环中为每个选定的数字生成按钮。

我想,你需要像buttonFactory这样的方法

-(UIButton*) makeButtonWithInfo(NSDictionary*)info

info中存储名称、图片地址、操作等(如果复杂,可以自定义类型buttonInfo)。

更新:

在 Xcode 中创建新的 .plist (resources/PropertyList) 并按如下方式填充: enter image description here

在代码中读取它

NSArray* ButtonArray = [NSArray arrayWithContentsOfFile:myPlist.plist];

此数组中将包含包含按钮信息的字典。

阅读有关 NSArray、NSDictionary 和 UIButton 类的 Xcode 帮助并实现您的逻辑。

关于ios - XCode:以编程方式添加具有特定名称和动画的多个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9271890/

相关文章:

ios - 在 iOS swift 中的导航应用程序中注册应用程序

ios - 新手无法为我的生活弄清楚这一点。快速的xcode

objective-c - 用于访问“副本捆绑资源” xcode构建阶段文件的变量?

ios - UITableView(在 UIScrollView 内部)didSelectRowAtIndexPath : not being called on first tap

cocoa - 如何为 GUI Cocoa 应用程序创建命令行前端?

ios - 如何在不破坏响应者链的情况下将 UIViewController View 嵌入到另一个 View 中

ios - 从不同的目标获取 Bundle ID

iOS 实例变量

ios - Xcode 使用未解析的标识符错误

c - MATLAB 编码器精度