Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios uibarbuttonite出现在iPad模拟器中,但不出现在实际应用中_Ios_Objective C_Ipad_Uibarbuttonitem - Fatal编程技术网

Ios uibarbuttonite出现在iPad模拟器中,但不出现在实际应用中

Ios uibarbuttonite出现在iPad模拟器中,但不出现在实际应用中,ios,objective-c,ipad,uibarbuttonitem,Ios,Objective C,Ipad,Uibarbuttonitem,我有一个难题。我是个新手,最近我的第一个应用程序获得了批准。然而,我刚刚注意到,在Xcode的iPad模拟器中运行应用程序时,由于某种原因,在实际的应用商店应用程序中看不到一个问号图标。问号是应用程序中启动视图控制器工具栏中的UIBarButton项。奇怪的是,UIBarButton显然存在于实际的应用商店应用程序中,因为当我点击屏幕的该区域时,它应该显示的信息屏幕确实出现了。但出于某种原因,按钮本身似乎在应用商店应用程序中是不可见的(但是,当我在Xcode的iPad模拟器上运行我的程序时,同样

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

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

下面是启动视图控制器的viewDidLoad方法中的代码段。questionMarkBarButton属性是一个UIBarButtonItem,单击时会显示一个信息屏幕

    [self.questionMarkBarButton setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIFont fontWithName:@"Helvetica-Bold" size:26.0], UITextAttributeFont,nil] forState:UIControlStateNormal];
你知道是什么导致了这种奇怪的行为吗?我不知道如何继续,因为显然我无法使用Xcode的iPad模拟器调试,因为它们显示问号uibarbuttonite是可见的,并且表现出预期的行为

附加信息:

以下是如何在视图控制器的.h文件中声明UIBarButtonim:

@property (weak, nonatomic) IBOutlet UIBarButtonItem *questionMarkBarButton;
它似乎连接正确,这一点可以从按钮工作的事实中得到证明(尽管它在从应用商店下载的应用程序中不可见)

此外,下面是故事板这一部分的图片:

最后,这里是Xcode模拟器的启动屏幕。您可以在此处的工具栏中看到问号按钮,但由于某些原因,它在从app store下载的应用程序版本中不可见(尽管存在):

更多信息:

在再次检查我的应用程序时,我发现后来在应用程序中,我再次使用UIBarButtonItem来显示信息屏幕,它显示和工作正常。我如何编码这些UIBarButtonItems之间最明显的区别是,对于这个有问题的“问号”UIBarButtonItem,我试图通过在视图控制器的viewDidLoad方法中添加以下代码行,使问号更粗体、更突出,然而,我没有在应用程序后面出现的uibarbuttonite中使用以下代码行(即,我让另一个uibarbuttonite中的文本以其简单的默认形式出现)

因此,除非有人有更好的想法,否则我想我会提交我的应用程序的更新,删除这行代码,让问号以简单的默认样式显示,而不是放大的粗体样式

最终编辑(12/7/13)


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

Objective c区分大小写,请确保您创建和分配的bar button变量相同。希望这能对你有所帮助。当模拟器而不是设备运行正常时,这是一个问题。

这只发生在您身上,还是其他人也经历过同样的事情?尝试从设备中删除应用程序,然后再次从应用商店重新下载。看看问题是否在那之后仍然存在。该应用程序刚刚出现在应用程序商店上,因此,不,没有其他人向我报告此行为。我将应用商店版本的应用下载到两台不同的iPad上,它们都显示出这种“看不见的问号”行为。如果有人想亲自查看行为,我的(第一个)应用程序的名称是ClueCalculator(线索板游戏实用程序),该行为可以在问号中看到,该问号在工具栏中短暂出现了几秒钟,然后消失。同样,这种行为在Xcode iPad模拟器中不会发生。你能解释一下你是如何在view controller上添加UIBarButtonItem的吗?你可以给出一个视图设计的屏幕截图。你可以尝试在ViewDidAspect()中添加代码……好的,下载后我看到了你面临的问题。这是uibarbutton项减速的问题。您可以发布声明条形按钮的代码吗?就任何可能的拼写错误或区分大小写的问题而言,一切似乎都是正确的。
    [self.questionMarkBarButton setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys: [UIFont fontWithName:@"Helvetica-Bold" size:26.0], UITextAttributeFont,nil] forState:UIControlStateNormal];