在做第三方分享時,在檢測到手機設備沒有安裝新浪微博客戶端的時候自動跳轉到新浪微博網頁,可以進行分享,可是在用戶不想分享了的時候,卻找不到網頁上的返回按鈕,如下圖,但是是點擊左上角的時候確實還是可以離開網頁,返回應用程序。
那麼如何把左上角的按鈕顯示出來?
我用的是友盟分享,在官方文檔裏面找不到這個按鈕的解決方法,於是在下載的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 對相應的按鈕,實現相應的功能。最終效果如下: