Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/41.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
Iphone 必须更改语言后刷新导航backbutton的标题_Iphone_Objective C_Ios_Xcode_Uinavigationitem - Fatal编程技术网

Iphone 必须更改语言后刷新导航backbutton的标题

Iphone 必须更改语言后刷新导航backbutton的标题,iphone,objective-c,ios,xcode,uinavigationitem,Iphone,Objective C,Ios,Xcode,Uinavigationitem,在我的应用程序中,用户可以按下工具栏上的参数按钮,打开模态viewcontroller。他更改语言,保存并关闭此viewcontroller。 当他返回上一个viewcontroller时,所有标签、图像视图等。。。有更改答案,但没有导航backbutton标题。我开始相信不可能更改此按钮的标题,因为它在viewcontroller中已经初始化 有人对这个问题作出回应吗 谢谢再制作一个后退按钮,然后将其分配给UINavigationItem的backBarButtonItem。再制作一个后退按钮

在我的应用程序中,用户可以按下工具栏上的参数按钮,打开模态viewcontroller。他更改语言,保存并关闭此viewcontroller。 当他返回上一个viewcontroller时,所有标签、图像视图等。。。有更改答案,但没有导航backbutton标题。我开始相信不可能更改此按钮的标题,因为它在viewcontroller中已经初始化

有人对这个问题作出回应吗


谢谢

再制作一个后退按钮,然后将其分配给UINavigationItem的backBarButtonItem。

再制作一个后退按钮,然后将其分配给UINavigationItem的backBarButtonItem。

您可以更改-void视图中的标题将显示:BOOLanimated
如果我没记错的话,当您关闭模态viewcontroller时,应该调用此方法。

您可以在-void viewwillbeen:BOOLanimated中更改标题
如果我没记错的话,当您关闭模式viewcontroller时,应该调用此方法。

当viewcontroller与backbutton绑定时,以及当我单击backbutton时,我都会这样做。如果我单击backbutton,它会调用viewWillDisplay方法,但如果我没有单击它,它将保持旧语言。当viewcontroller与backbutton绑定时,我会这样做,当我单击backbutton时,也会这样做。如果我单击backbutton,它将调用ViewWillDisplay方法,但如果我不单击它,它将保留旧语言。我尝试了此解决方案,我将在导航控制器中找到的viewcontroller方法称为viewcontroller方法[viewcontroller ViewWillDisplay:YES]在viewcontroller中,我在ViewWillEnglish方法中排除的内容将消失,但什么也没有发生。因此,如果我理解正确,您希望切换backbuttons标题的语言,默认情况下,该标题应为backbutton指向的viewcontroller的标题。或者你只是简单地回写了你的后背按钮?我有一些更改backbuttons标题的代码。我会帮你把它挖出来,找到后再贴出来:我把标题放回backbutton上,如果我选择法语,我想再发一次,但只有当我点击backbutton时才会改变,就像上面说的,我想改变什么。请参见下面的代码,我在视图中使用的内容将显示在backbutton上绑定的viewcontroller,因此,当我单击“后退”按钮时显示的viewcontroller我要更改的内容:backBtn=[[UIBarButtonim alloc]initWithTitle:[self getLocalizedText:@WORD_in_GOOD_LANGUAGE_4_back__BTN]样式:UIBarButtonimStyleBordedTarget:nil action:nil];谢谢你的帮助。当然,很抱歉:[self.navigationItem setBackBarButtonItem:backBtn]如果我单击“确定”,我会找到它。模态页面的视图控制器实际上是一个navigationcontroller,我在主navigationcontroller中添加了它,因此对于“更改所有backbutton”,我在模态页面中调用了self.navigationcontroller.ViewController,但在模态页面中,我调用的不是主navigationController,而是模式页面的navigationController:-/我以为应用程序委托中初始化的navigationController是self.navigationController(应用程序的所有页面)^^抱歉,感谢您的帮助我尝试了此解决方案,我调用viewcontroller的此方法,即我在导航控制器中找到的方法[viewcontroller ViewWillDisplay:YES]在viewcontroller中我在ViewWillEnglish方法中排除的方法,但什么都没有发生OK。因此,如果我理解正确,您希望切换backbuttons标题的语言,默认情况下,该标题应为backbutton指向的viewcontroller的标题。或者你只是简单地回写了你的后背按钮?我有一些更改backbuttons标题的代码。我会帮你把它挖出来,找到后再贴出来:我把标题放回backbutton上,如果我选择法语,我想再发一次,但只有当我点击backbutton时才会改变,就像上面说的,我想改变什么。请参见下面的代码,我在视图中使用的内容将显示在backbutton上绑定的viewcontroller,因此,当我单击“后退”按钮时显示的viewcontroller我要更改的内容:backBtn=[[UIBarButtonim alloc]initWithTitle:[self getLocalizedText:@WORD_in_GOOD_LANGUAGE_4_back__BTN]样式:UIBarButtonimStyleBordedTarget:nil action:nil];谢谢你的帮助。当然,很抱歉:[self.navigationItem setBackBarButtonItem:backBtn]如果我单击“确定”,我会找到它。模态页面的视图控制器实际上是一个navigationcontroller,我在主navigationcontroller中添加了它,因此对于“更改所有backbutton”,我在模态页面中调用了self.navigationcontroller.ViewController,但在模态页面中,我调用的不是主navigationController,而是模式页面的navigationController:-/i认为应用程序委托中初始化的navigationController是self.navigationController 在应用程序的所有页面中^^抱歉,谢谢您的帮助