在做第三方分享时,在检测到手机设备没有安装新浪微博客户端的时候自动跳转到新浪微博网页,可以进行分享,可是在用户不想分享了的时候,却找不到网页上的返回按钮,如下图,但是是点击左上角的时候确实还是可以离开网页,返回应用程序。
那么如何把左上角的按钮显示出来?
我用的是友盟分享,在官方文档里面找不到这个按钮的解决方法,于是在下载的SDK中各文件中寻找是否有显示的方法,结果很简单,调用SDK中的一个方法就可以显示相应的按钮。
添加代码如下:
/**
设置导航栏,包括导航栏的UINavigationBar,返回按钮,关闭按钮,发送按钮,刷新按钮和中间的UINavigationItem的样式
例如下面写法:
```
[UMSocialConfig setNavigationBarConfig:^(UINavigationBar *bar,
UIButton *closeButton,
UIButton *backButton,
UIButton *postButton,
UIButton *refreshButton,
UINavigationItem * navigationItem){
UIImage * backgroundImage = [UIImage imageNamed:@"UMSocialSDKResourcesNew.bundle/OtherTheme/UMS_nav_bar_bg"];
if ([bar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) {
[bar setBackgroundImage:backgroundImage forBarMetrics:UIBarMetricsDefault];
}
bar.titleTextAttributes = nil;
}];
```
@param navigationConfig 设置导航栏样式的block对象
navigationConfig 是一个Block对象,传入的参数包括:
@param bar 导航栏
@param closeButton 关闭按钮
@param backButton 返回按钮
@param postButton 发送按钮
@param refreshButton 刷新按钮
@param navigationItem 所在UINavigationController的navigationItem,可以改变相应的标题
*/
[UMSocialConfig setNavigationBarConfig:^(UINavigationBar *bar,
UIButton *closeButton,
UIButton *backButton,
UIButton *postButton,
UIButton *refreshButton,
UINavigationItem * navigationItem){
[closeButton setTitle:@"关闭" forState:UIControlStateNormal];
}];
像设置普通的按钮一样,设置title 或者 image 对相应的按钮,实现相应的功能。最终效果如下: