把UIView覆蓋到狀態列上的方法

2021-06-16 05:48:46 字數 905 閱讀 5346

最近iphone

上的乙個新聞閱讀軟體

這個軟體

征服我這個吹毛求疵的人的乙個地方, 其實在於乙個小細節, 有了這個細節, 我覺得, 這軟體

值了!當然, 本文是討論技術, 不是軟體評測.

國外好多論壇上在問這個問題,但答案都是需要private api

之類的,無法上store的方法. 但是reeder怎麼可以? 我也得可以才行 :) ,經過一段時間的琢磨, 我知道了這個實現方法, 分享給大家.

方法的原理就是, 生成乙個新的uiwindow, 把這個window放在狀態列之上! 其實這個效果早在2.0的時候就能實現, 只是我們這些不求甚解, 學習不紮實的人沒有注意到罷了.

那具體怎麼做, 我先賣個關子, 大家自己根據這思路研究一下, 其實, 很簡單, 很簡單, 我幾天後公布答案 :) 不要搶答噢 嘎嘎~~~

公布答案:

首先 繼承 uiwindow, init的方法: 關鍵的語句 self.windowlevel=uiwindowlevelalert;

- (id) init

cgrect f=[[uiscreen mainscreen] bounds];

self = [super initwithframe:cgrectmake(0, 0, f.size.width, s.size.height)];

if (self != nil) {

self.windowlevel=uiwindowlevelalert;

self.backgroundcolor=[uicolor clearcolor];

[self makekeyandvisible];

return self;

現在 在這個window新增view 就會覆蓋到狀態列上了, 你猜對了麼??

把UIView覆蓋到狀態列上的方法

最近iphone上的乙個新聞閱讀軟體 這個軟體征服我這個吹毛求疵的人的乙個地方,其實在於乙個小細節,有了這個細節,我覺得,這軟體值了 這個細節就是系統狀態列圖示,從來沒有乙個程式在狀態列上做文章,reeder 做到了,新聞的重新整理,載入,在系統狀態列上顯示,顯得非常的蘋果味道,如圖 當然,本文是討...

winform中的狀態列,以及在狀態欄目上顯示時間

1 在winform上新增狀態列,並且在狀態欄目上多新增幾個label。step1 拖乙個statusstrip到winform上,名字預設為statusstrip1。找到statusstrip1的items屬性,雙擊開啟新增3個statuslabel。名字預設分別為toolstripstatusl...

狀態列的建立

讓對話方塊的狀態列顯示時鐘 滑鼠位置 滑鼠點的顏色資訊等 新增字串資源 id indicator pos 滑鼠所在位置 id indicator color 滑鼠位置顏色 id indicator time 當前系統時間 在對話方塊類標頭檔案中進行狀態列物件的定義 cstatusbar m wnds...