更新 iPad 的当前目标后,导航栏按钮不起作用

发布于 2024-09-07 10:11:46 字数 468 浏览 4 评论 0原文

我正在尝试按照以下步骤将我的 iPhone 应用程序转换为“通用”应用程序。该应用程序的第一个屏幕有一个导航栏。

  1. 下载并安装 Xcode 3.2.3 和 iPhone SDK 4。
  2. 打开 iPhone 应用程序的现有 Xcode 项目,选择目标并从“文件”菜单中选择“更新 iPad 的当前目标...”。
  3. 在出现的弹出窗口中选择“一个通用应用程序”。

现在,当我在 iPad 或 iPad 模拟器中启动应用程序时,导航栏显示正常,但右侧栏按钮项目不起作用。我已经确认 rightBarButtonItem 已启用,

(gdb) p (int)[[[firstController navigationItem] rightBarButtonItem] isEnabled]
$2 = 1

到处搜索解决方案,但到目前为止还没有任何线索。

I'm trying to convert my iPhone app to a "universal" app with the following steps. The app's first screen has a navigation bar.

  1. Download and install Xcode 3.2.3 and iPhone SDK 4.
  2. Open an existing Xcode project of an iPhone app, select the target and choose "Update Current Target for iPad..." from the File menu.
  3. Select "One Universal application" in the popup that appears.

Now when I start the app in an iPad or the iPad simulator, the navigation bar is displayed all right but the right bar button item just doesn't work. I've confirmed that the rightBarButtonItem is enabled,

(gdb) p (int)[[[firstController navigationItem] rightBarButtonItem] isEnabled]
$2 = 1

searched high and low for a solution, but no clue so far.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最美的太阳 2024-09-14 10:11:46

事实证明,这是 iOS 4 的 iPhone SDK 发行说明

当选择目标然后
选择“更新当前目标
iPad,”创建了新的 nib 文件,但是
未转换为 iPad。
要解决这个问题
问题:

  • 选择每个 nib 文件
    复制的,在界面中打开
    生成器,选择“文件->创建
    iPad 版本”菜单选项,然后选择
    文档“另存为...”,然后保存
    覆盖 nib 文件。

  • 或者调用这个
    终端中的命令
    项目文件夹:

    查找资源-iPad -type f -name "*.xib" -exec ibtool --sdk "" --change-target-runtime IBIPadFramework {} --write {} \;< /p>

I希望将其发布在这里能够对遇到类似问题的其他人有所帮助。

Turns out it's a known issue documented in the iPhone SDK Release Notes for iOS 4:

When selecting a target and then
choosing "Update Current Target for
iPad," new nib files are created but
not converted to iPad.
To fix this
problem:

  • Either select each nib file
    that was copied, open it in Interface
    Builder, select the "File -> Create
    iPad Version" menu option, then select
    "Save As…" for the document, and save
    over the nib file.

  • Or invoke this
    command in the terminal from the
    project's folder:

    find Resources-iPad -type f -name "*.xib" -exec ibtool --sdk "" --change-target-runtime IBIPadFramework {} --write {} \;

I hope posting it here will be of help to others with similar problems.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文