navigationController.navigationBar 設定背景透明
以前一直沒用過帶透明的導航欄圖片,現在專案要用到這樣的。以為放上圖片就是自動透明瞭
可是,發現透明那部竟然是黑的。無論怎麼clearcolor 都不行。百度了很多頁也沒有查到可以用的方法。
最後在http://stackoverflow.com 找到一個關鍵點 :
viewDidLoad
。導航自定義圖片設定這裡也順便貼出來吧
- (void) setNavBarImg:(UINavigationBar *)navBar
{
#define kSCNavBarImageTag 10
if ([navBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)])
{
//if iOS 5.0 and later
[navBar setBackgroundImage:ThemeImageName(@" [email protected]") forBarMetrics:UIBarMetricsDefault];
}
else
{
UIImageView *imageView = (UIImageView *)[navBar viewWithTag:kSCNavBarImageTag];
[imageView setBackgroundColor:ClearColor];
if (imageView == nil)
{
imageView = [[UIImageView alloc] initWithImage:
ThemeImageName(@" [email protected]")];
[imageView setTag:kSCNavBarImageTag];
[navBar insertSubview:imageView atIndex:0];
}
}
}
如果你的圖片是有透明的。如果你在百度裡搜。那你真的要搜死了。。
方法:
[self.navigationController.navigationBar setTranslucent:YES]; // 為什麼要加這個呢,shadowImage 是在ios6.0以後才可用的。但是發現5.0也可以用。不過如果你不判斷有沒有這個方法, // 而直接去呼叫可能會crash,所以判斷下。作用:如果你設定了上面那句話,你會發現是透明瞭。但是會有一個陰影在,下面的方法就是去陰影 if ([self.navigationController.navigationBar respondsToSelector:@selector(shadowImage)]) { [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]]; } // 以上面4句是必須的,但是習慣還是加了下面這句話 [self.navigationController.navigationBar setBackgroundColor:ClearColor];
這裡要感謝萬能的 Google ,鄙視度娘 鄙視xxxx(你懂的)......
相關推薦
navigationController.navigationBar 設定背景透明
以前一直沒用過帶透明的導航欄圖片,現在專案要用到這樣的。以為放上圖片就是自動透明瞭 可是,發現透明那部竟然是黑的。無論怎麼clearcolor 都不行。百度了很多頁也沒有查到可以用的方法。 最後在http://stackoverflow.com 找到一個關鍵點 : vie
activity設定背景透明及遇到的坑
<style name="MyDialogStyleBottom" parent="Theme.AppCompat.Light.NoActionBar" > <item
Dialog設定背景透明無效,在安卓5.0系統上無效解決方法!
困擾了大半天的一個問題,寫一個關閉按鈕突出的dialog,在eclipse上面寫的Demo,然後執行在魅族,紅米,華為手機上都沒問題,都能正常的突出按鈕(其中魅族手機和華為手機都是5.0以上的系統),
android webview 設定背景透明色
android WebView 設定背景色為透明色 在網上找了好多的方法都試過了都不行 1.直接設定成background 為透明色或者透明圖片(無效) android:background="@android:color/transparent" 2.設
設定 navigationbar 設定為透明呢, 但是返回按鈕不透明
可以在 viewWillAppear 設定成透明 self.navigationController.navigationBar.shadowImage = [UIImage new]; [se
input設定背景透明
文章摘抄 http://blog.sina.com.cn/s/blog_45cfbac80100ngkd.html http://www.w3school.com.cn/cssref/pr_background-color.asp <BODY bgcolor= "blue "> <
sublime 設定背景透明度 下載sublime 透明背景外掛
下載sublime 透明背景外掛 我用的是git下載外掛: git clone https://github.com/vhanla/SublimeTextTrans.git 然後,開啟sublime 選項卡&nbs
74 - three.js 筆記 - 通過透明渲染設定背景圖片
1、示例 示例 http://ithanmang.com/threeJs/home/201809/20180910/01-canvas-background-image.html 效果 2、實現步驟 2.1、背景圖 2.2、設定背景 此處是給body元素設定了背景
MFC控制元件背景透明設定
這種方法只適用於下面這些控制元件 CTLCOLOR_BTN Button control CTLCOLOR_DLG Dialog box CTLCOLOR_EDIT Edit control CTLCOLOR_LISTBOX List-box cont
css設定半透明背景顏色並且內容不會受影響的解決辦法
background-color:rgba(0,0,0,0.5); 0,0,0,0.5 其中0,0,0代表RGB顏色 0.5代表透明度 所以展示為黑色半透明狀態並且不會影響內容也為半透明狀態
iframe設定無邊框背景透明
一般我們設定iframe無邊框背景透明程式碼如下: <iframe style="border:0;background:none;"></iframe> 現代瀏覽器如chome,firefox用上述程式碼即可實現,當
ie7、8設定iframe無邊框背景透明
一般我們設定iframe無邊框背景透明程式碼如下: <iframe style="border:0;background:none;"></iframe> 現代瀏覽器如chome,firefox用上述程式碼即可實現,當
Qt中設定QML窗體無邊框和背景透明
主要程式碼在(main()函式中)如下: //設定窗體無邊框 view.setWindowFlags(Qt::FramelessWindowHint); //設定整個窗體背景為透明 view.setAttribute(Qt::WA_TranslucentBac
MFC學習之 對話方塊設定背景顏色及控制元件透明的方法
對話方塊設定背景色之後控制元件不透明的問題。 1.對話方塊設定背景色: 方法1:(用OnPaint()) 在Dlg.h中:宣告 afx_msg void OnPaint(); HICON m_hIcon; 在Dl
Android 首頁當ScrollView向上滑動時,設定標題欄的背景透明變化
頁面整個佈局大體上是ScrollView裡面包含了一個ImageView和RecyclerView,所以先得到ImageView的高度,當ScrollView向上滑動時,設定標題欄的背景色、文字顏色,當超過ImageView的高度時,設定其背景為白色,字型為黑色。 重寫ScrollV
mfc 編輯框背景透明設定
前幾天和風在這裡討論關於CEdit控制元件的透明問題。主要的目的就是要做一個有圖形背景的Edit控制元件,經過一番努,終於做出了一個還算象樣的Edit控制元件。 做一個透明的Edit控制元件的主要問題是字元的輸出,在Edit裡輸出的重新整理有幾個時機,一個是在接收到鍵盤或
Android設定窗體Activity背景透明
背景透明 style.xml <item name="android:windowBackground">@color/transparent</item>
android 自定義Dialog背景透明及顯示位置設定(轉載)
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" a
設定半透明遮罩背景
半透明遮罩背景常用於彈窗的背景 如下所示: 程式碼如下所示: .overlay { top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.7);
android對話方塊程式碼中設定背景為透明
<span style="font-size:18px;">//建立背景透明的對話方塊 AlertDialog.THEME_HOLO_LIGHT AlertDialog.Builder b = new AlertDialog.Builder(myContex