gpt4 book ai didi

ios - UIBarButtonItem 出现在 iPad 模拟器中,但不在实际应用中

转载 作者:行者123 更新时间:2023-12-01 16:45:48 24 4
gpt4 key购买 nike

我有一个谜题。我是新手,最近我的第一个应用程序获得了批准。但是,我刚刚注意到,当我在 Xcode 的 iPad 模拟器中运行该应用程序时,一个问号图标在实际的应用商店应用程序中由于某种原因是不可见的。问号是应用程序中起始 View Controller 工具栏中的 UIBarButton 项。奇怪的是 UIBarButton 显然存在于实际的应用商店应用程序中,因为当我点击屏幕的那个区域时,它应该显示的信息屏幕确实出现了。但是由于某种原因,按钮本身在应用商店应用程序中似乎是不可见的(但是,当我在 Xcode 的 iPad 模拟器上运行我的程序时,同样的 UIBarButton 是可见的)。

还有一条信息:当我第一次启动从 iPad 上的应用商店下载的应用时,蓝色问号实际上确实在应用的工具栏中短暂出现了大约 1/4 秒,然后消失了。

下面是起始 View Controller 的 viewDidLoad 方法中的代码段。 questionMarkBarButton 属性是一个 UIBarButtonItem,它在单击时会显示一个信息屏幕。

    [self.questionMarkBarButton setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIFont fontWithName:@"Helvetica-Bold" size:26.0], UITextAttributeFont,nil] forState:UIControlStateNormal];

任何想法可能导致这种奇怪的行为?我不知道如何继续,因为显然我无法使用 Xcode 的 iPad 模拟器进行调试,因为它们显示问号 UIBarButtonItem 是可见的并且行为符合预期。

附加信息:

下面是在 View Controller 的 .h 文件中声明 UIBarButtonItem 的方式:
@property (weak, nonatomic) IBOutlet UIBarButtonItem *questionMarkBarButton;

它似乎已正确连接,这一事实证明了该按钮可以工作(尽管它在从 App Store 下载的应用程序中是不可见的)。

另外,这里是 Storyboard这一部分的图片: Storyboard picture

最后,这是 Xcode 模拟器上的起始屏幕。您可以在此处的工具栏中看到问号按钮,但由于某种原因,它在从应用商店下载的应用版本中是不可见的(尽管存在):

enter image description here

更多信息:

在再次检查我的应用程序时,我发现稍后在应用程序中我再次使用 UIBarButtonItem 来呈现信息屏幕,它会按应有的方式显示和工作。我对这些 UIBarButtonItems 的编码方式之间最明显的区别是,对于这个有问题的“问号” UIBarButtonItem,我尝试通过将以下代码行放在 View Controller 的 viewDidLoad 方法中来使问号更粗更突出,而我做了不要将以下代码行与稍后出现在应用程序中的 UIBarButtonItem 一起使用(即,我让另一个 UIBarButtonItem 中的文本仅以其普通的默认形式出现)。
    [self.questionMarkBarButton setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIFont fontWithName:@"Helvetica-Bold" size:26.0], UITextAttributeFont,nil] forState:UIControlStateNormal];

因此,除非有人有更好的主意,否则我想我只会为我的应用程序提交更新,在其中我删除这行代码,并让问号以其简单的默认样式出现,而不是放大的粗体样式。

最终编辑 (13 年 12 月 7 日)

我删除了上面的代码行并将我的应用重新提交到 App Store。该应用程序现在可以正常运行,带有“?”现在显示信息按钮。底线似乎是 setTitleTextAttributes 方法当前似乎不是与 UIBarButtonItem 对象一起使用的良好、可靠的方法。它在 Xcode 模拟器中似乎可以正常工作,甚至在使用您自己的 iPhone 和 iPod 进行测试时,但由于某些原因,当人们从 Apple 商店下载该应用程序时,它就无法正常工作。

最佳答案

Objective c 区分大小写,确保您创建和分配的 bar button 变量是相同的。希望这可以帮助你。因为这是模拟器而不是设备顺利进行时的问题之一。

关于ios - UIBarButtonItem 出现在 iPad 模拟器中,但不在实际应用中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20014484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com