Ios UIAlertView导致更改导航栏按钮';s标题标签
我在我的应用程序中观察到一种奇怪的趋势:每当显示一条警告消息时,导航栏按钮标题的值就会变为故事板标题的值。以下是其中一个UIAlertView: 上图中可见的标题值100是“我的故事板”中显示的值。我正在成功地将此栏按钮的值更改为此行的当前分数:Ios UIAlertView导致更改导航栏按钮';s标题标签,ios,uialertview,Ios,Uialertview,我在我的应用程序中观察到一种奇怪的趋势:每当显示一条警告消息时,导航栏按钮标题的值就会变为故事板标题的值。以下是其中一个UIAlertView: 上图中可见的标题值100是“我的故事板”中显示的值。我正在成功地将此栏按钮的值更改为此行的当前分数: self.coinsRemainingButton.titleLabel.text = self.coinsRemaining; 一切正常,直到我显示一些警报视图。一旦显示任何UIAlertView,无论当前分数如何,此导航栏按钮的标题都将更改
self.coinsRemainingButton.titleLabel.text = self.coinsRemaining;
一切正常,直到我显示一些警报视图。一旦显示任何UIAlertView,无论当前分数如何,此导航栏按钮的标题都将更改为100。例如,即使我的当前分数是500,只要出现警告消息,我的工具栏按钮的值就会更改为100,如上面的屏幕截图所示。我已经彻底检查过了,我自己没有错误地更改值。
如果我删除UIAlertView行,一切都会恢复正常。
谢谢你抽出时间 更新1:以下是我的UIAlertView代码:
UIAlertView *iapSuccessful = [[UIAlertView alloc] initWithTitle:@"Purchase Successful"
message:@"Congrats!! You just got coins"
delegate:Nil
cancelButtonTitle:@"Ok"
otherButtonTitles: nil];
[iapSuccessful show];
更新2:我找不到解决方案,因此为了解决问题,我考虑在显示UIAlertView后立即通过代码更新我的条形按钮标题:
[iapSuccessful show];
self.coinsRemainingButton.titleLabel.text = self.coinsRemaining;
但是UIAlertView仍然强制将条形按钮的标题更改为情节提要值。从情节提要中删除按钮的标题,这就解决了问题我尝试了几种技巧来解决这个问题,但只要出现任何
UIAlertView
,值(titleLabel.text
)条按钮项的值更改为其情节提要值
我注意到,对于从情节提要中绘制的导航栏对象,值仅发生了更改。因此,我从情节提要中删除了条形按钮项,并以编程方式添加了条形按钮,解决了我的问题:)如果需要,以下是以编程方式添加条形按钮项的代码:
//Add a custom button as the right bar button item of navigation bar
self.coinsRemainingButton.frame = CGRectMake(0.00f, 0.00f, 72.00f, 37.00f);
[self.coinsRemainingButton setBackgroundImage:[UIImage imageNamed:@"coinsBackground"] forState:UIControlStateNormal];
[self.coinsRemainingButton setTitle:@"100" forState:UIControlStateNormal];
UIBarButtonItem *rightCustomBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.coinsRemainingButton];
self.navigationItem.rightBarButtonItem = rightCustomBarButtonItem;
显示您使用的方法uialertview@Ilario方法非常大,但我已经添加了用于警报视图的UIAlertView代码。我想看看添加点的部分,我猜它就在UIAlertView之前。我正在通过
self.coinsRemainingButton.titleLabel.text=self.coinsRemaining更新硬币编号代码>。事实上,如果我仔细观察按钮标题,那么第一个硬币会被更新到正确的数字,但在不到几秒钟的时间里,一旦出现警报视图,条形按钮标题就会被更新到100。注意:积分(或硬币)可以在应用程序流程中的任何位置更新,不一定在任何UIAlertView之前更新。但是,每次出现警报时,即使任何地方都没有更新硬币号码,昏暗背景中的硬币号码也会变为100。代码中有一点,你对硬币说必须是100?我尝试从情节提要中删除按钮标题,但当我运行应用程序时,按钮标题显示为空白。硬币得到了正确的更新,但它们在GUI上不可见,标题只是空白<代码>self.coinsRemaining按钮。标题标签。文本=self.coinsRemaining如果情节提要标题为空,则代码>似乎不起作用:(哦..奇怪的是…在viewDidLoad中,这个文本标签应该声明多少?viewDidLoad中没有提到任何关于工具栏按钮标题的内容。UIAlertView似乎正在重置导航栏按钮项目。或者至少将工具栏按钮标题的值重置为其故事板值。我尝试过谷歌搜索,但没有任何结果…@SaurabhHooda如果您尝试在viewDidLoad中设置一些值?会发生什么?如果我在viewDidLoad中设置了一些值,则该值在视图加载时显示为标题标签。但当某些警报视图出现时,同样的问题也会发生。