当我按下它时UIViewController,它在新的后退按钮中有一些标题UIViewController,如果标题有很多文本,它在iPhone 4s看起来不太好所以我想删除它.
如果我在prepareForSegue函数中添加一些代码,那将是一个麻烦.
有没有更好的方法实现这一目标
我昨天将我的设备更新到iOS 11 Beta,我的应用程序在AppDelegate中使用此代码在所有屏幕上隐藏了后退按钮标题:
@implementation UINavigationItem (Customization)
/**
Removes text from all default back buttons so only the arrow or custom image shows up.
*/
-(UIBarButtonItem *)backBarButtonItem
{
return [[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStylePlain target:nil action:nil];
}
Run Code Online (Sandbox Code Playgroud)
它在旧版本上正常工作,但是当我在iOS 11 Beta上运行我的应用程序时,后退按钮的标题仍然显示.有人面对这个问题吗?它是iOS或iOS 11的测试版bug需要另一种隐藏后退按钮标题的方法吗?
简而言之,我想这样做,但要使用 SwiftUI。
(家应该被移除)
到目前为止,我还没有找到NavigationBarButton直接访问 的方法,并且设法找到了以下似乎是我迄今为止可以找到的修改按钮的唯一方法:
struct MyList: View {
var body: some View {
Text("MyList")
.navigationBarTitle(Text(verbatim: "MyList"), displayMode: .inline)
.navigationBarItems(leading: Text("<"))
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我丢失了默认的返回图像并得到了一个丑陋的 <。
我想知道是否可以从继承的导航栏中删除导航栏后退按钮文本.目前我的导航栏显示"<ControllerName".我想简单地显示"<"后退图标.我还想知道如何显示"<Back",以及如何完全删除它.
我知道我可以通过向故事板添加一个条形按钮项来实现这一点,但是有更简单的方法吗?
注意,此代码不起作用:
self.navigationItem.backBarButtonItem = UIBarButtonItem(title:"", style:.plain, target:nil, action:nil)
Run Code Online (Sandbox Code Playgroud)