我正在为 Xcode 代码及其接口(interface)标记创建一个代码生成器
我注意到 UI 控件的“ID”xml 属性有一些困惑的值,我想知道生成此信息的逻辑是什么。
这会不会只是一种让创建自生成代码变得更加困难的苹果方法? 我能否使我生成的应用程序与我自己的任何 ID 值设置一起工作?
无论如何我都在开发它,并且它目前运行良好,但不确定什么时候会变得更复杂
最佳答案
edwin,我的只是一个考试,过去曾尝试调整 .storyboard/.nib 代码,并且不得不匹配这些 ID,我认为唯一重要的是:
id 可以包含“0-9”“A-Z”“a-z”和破折号('-')
它们必须是唯一的,不能与同一 xml 中的其他 id 冲突
它们必须在声明和标识符上匹配
Storyboard场景和 Controller 的 ID 似乎是数字,从文件顶部开始并升序
View 的 ID 似乎由 xxx-xx-xxx 形式的三元组组成
如果您坚持这样做,尤其是如果您不希望随后调整生成的文件,那么您应该是安全的。即使您确实希望调整这些文件,只要它们是唯一的,Xcode 也应该尊重您生成的那些 ID。我只是不知道如果您随后添加一个创建的 ID 与您生成的 ID 冲突的 View 会发生什么。
关于iphone - 从 Storyboard 文件/NIB 文件上的控件生成的 ID 值背后的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10644214/