6

我正在尝试在 Xcode 中创建自定义模板。在我的 TemplateInfo.plist 中,对于关键选项,我在下面粘贴了代码。这个模板将用于在事件发生时经常(但不总是)使用委托的类。

我遇到的问题是最底层的值,RequiredOptions. 我希望在选中 withProtocol 复选框时才启用文本框。但是,我无法弄清楚要使用什么价值和价值类型。我尝试了以下方法:

  • <true/>(如下) - 文本框始终处于启用状态。
  • <string>YES</string>- 文本框始终处于禁用状态。
  • <integer>1</integer>- 文本框始终启用。

有人对我还可以尝试什么有任何想法吗?更好的是,有人知道 Xcode 模板的不错参考吗?

我已经阅读了 Apple 的 plist 手册页和该网站上的文章。

<array>
    <dict>
        <key>Description</key>
        <string>The name of the class to create</string>
        <key>Identifier</key>
        <string>productName</string>
        <key>Name</key>
        <string>Class</string>
        <key>NotPersisted</key>
        <true/>
        <key>Required</key>
        <true/>
        <key>Type</key>
        <string>text</string>
    </dict>
    <dict>
        <key>Default</key>
        <string>false</string>
        <key>Identifier</key>
        <string>withXIB</string>
        <key>Name</key>
        <string>With XIB for user interface</string>
        <key>Type</key>
        <string>checkbox</string>
    </dict>
    <dict>
        <key>Description</key>
        <string>Choose whether or not a delegate skeleton is included.</string>
        <key>Default</key>
        <string>false</string>
        <key>Identifier</key>
        <string>withProtocol</string>
        <key>Name</key>
        <string>With delegate skeleton</string>
        <key>Type</key>
        <string>checkbox</string>
    </dict>
    <dict>
        <key>Description</key>
        <string>The name of the protocol used for delegation.</string>
        <key>Identifier</key>
        <string>protocolName</string>
        <key>Name</key>
        <string>Protocol</string>
        <key>NotPersisted</key>
        <true/>
        <key>Required</key>
        <true/>
        <key>Type</key>
        <string>text</string>
        <key>RequiredOptions</key>
        <dict>
            <key>withProtocol</key>
            <true/>
        </dict>
    </dict>
</array>
4

2 回答 2

3

我通过替换为解决了我自己的<true/>问题<string>true</string>

于 2013-02-14T21:13:23.210 回答
0
于 2020-12-04T11:38:03.340 回答