Ⅰ 假設美國封鎖了安卓系統,那我們正在使用的安卓手機會不會受到影響
目前我國幾乎所有廠商都在使用安卓系統,可以說安卓救活了中國手機廠商,不管是華為,小米,魅族,ov,一加還是錘子通通使用的安卓。
閉源安卓 不影響手機的使用 如果美國不顧谷歌死活強行閉源安卓,這對我們正在使用的安卓手機,並不會受到影響,首先解釋一下,安卓閉源並不是指的是一閉源就沒辦法使用安卓,因為這個版本的安卓一但開源,谷歌就對其失去了控制權,根本沒辦法控制,只能在下一個版本以閉源方式發行,所以上一個版本國內廠商依然可以使用,只是無緣新版本的安卓,或者是繳納巨額的專利費繼續使用新版安卓。
接下來如果國內廠商不願意使用老版安卓,又不願意繳納巨額專利費,那麼各大廠商大佬就會以此為契機,開始做自己的系統,目前國產系統有阿里的雲OS,傳出的小米的mios,以及同洲電子的960OS,甚至還有聯通與移動聯手研發的系統,目前這些系統市場佔有率加起來不過3%,安卓閉源,它們便會開始借機瘋狂建立自己的生態,爭取佔領國內市場,所以說這對於國產手機不是災難而是機遇。
如果美國真的封鎖安卓,大家的手機該怎麼樣就怎麼樣,最大的可能就是使用上國產的系統。
應"悟空小秘書"邀答!
假設美國封鎖了安卓系統,那我們正在使用的安卓手機會不會受到影響?
安卓手機及華為手機里安裝了安卓系統,你擔心美國會封鎖我們,讓我們手上帶安卓軟體的手機會死機不能用嗎?
你首發要知道安卓軟體已經成為開源軟體,就是開放了原來的代碼,比方說電燈,青黴素是西方的專利產品,現在為何便宜,就是"開源"了,也就是不需要繳專利費,你有本事製造就行,不繳專利費才如此便宜的。
一個放棄或被人買斷了專利和版權的產品就不好再去干涉使用者了,現在 科技 研製人員都各自對安卓軟體改制,象山寨產品一樣,根據需要改制一種。再說一個美國要想對世界全面封鎖一是無能力二是對他們也不利,就象5nm晶元一樣,封鎖不外出自己用不了還賺什麼錢。
由於華為被美國打壓封鎖,中國人也清醒了,華為在研製新產品逐步去美國化,2020年12月份華為的鴻蒙系統問世,還有阿里雲系統也可以代用,美國的打壓是限制中國的山寨品,因為這個軟體基礎上誰都可以重新設計變成自己所需的產品。你就別怕了,真能被封鎖,到時可以重新下載我們的軟體。美國的打壓目的是讓用戶專買他的蘋果,憑中國人的智慧,不會讓美國得逞的。
謝謝你的閱讀 !
我們有鴻蒙系統取代他,鴻蒙的生態將越來越完善,最終安卓系統是否封鎖不重要。我們不能總是被動地被人控制,作為一個大國,作為世界最大的手機市場,我們應該有自己的話事權!
假設美國封鎖了安卓系統,那我們正在使用的安卓手機會不會受到影響? 可以肯定地回答:我們手中的安卓手機不會受到影響。安卓手機跟蘋果手機不一樣,蘋果手機內部完全是美國技術,而我們手中使用的安裝手機,基本上都是國產手機,雖然也有一部分美國技術在裡面,但影響力不大。
一、安卓系統是開源的,封鎖也沒有用的。安卓系統是開源的,也就是說,任何人都可以使用和修改。這就好比一本書,已經發表了,而且已經到了別人的手中,你還能把書中的內容給拿回去嗎?不能,潑出去的水,還怎麼收回去?當然,谷歌可以閉源安卓系統,不讓別人再使用新的安卓系統,比如:未來的安卓12版本。但是,之前發布的安卓版本(安卓11、安卓10、安卓9),都不會受到影響,因為這些安卓版本已經到了別人的手中,拿不回去了。
二、國產手機的安卓系統都是經過處理的。如果谷歌用這一招對付歐洲國家,可能還真的有效果,因為歐洲國家的用戶,對安卓系統的谷歌全家桶(谷歌應用商店、谷歌地圖、谷歌play等等),依賴性非常強,一旦不讓他們使用谷歌全家桶,他們都不知道怎樣使用手機了。而國產手機就不存在這個問題, 國產手機的安卓系統都是經過加工處理的,都去除了谷歌全家桶功能 ,所以,不會受到谷歌方面的威脅。
三、就算安卓系統真的不能用了,還可以使用鴻蒙系統。現在就更不用再擔心這種事情了,因為國產的手機系統——鴻蒙系統將於今年(2020年)12月份正式發布並測試,也就是說,2021年,我們就可以使用上鴻蒙系統的手機了。消息人士透露,鴻蒙系統將會首先向40多款華為和榮耀手機推送(今年和去年的華為手機)。而且,華為已經正式宣布開源鴻蒙系統,就算其它國產手機真的不能使用安卓系統了,還可以使用國產的鴻蒙系統,正應了那句老話——「 家裡有糧,心中才能不慌 」。
總之,現在的國產手機真的已經崛起,再也不是幾年前的山寨手機了,再也不用懼怕美國揮舞的制裁大棒了。 雖然在很多方面還有很多不足,但是,受制於人的時代正在慢慢地離我們而去。 而且,國產手機正在加大去美國技術的步伐,從核心的硬體(CPU、運行內存、存儲內存、屏幕)到系統軟體,都在加快替代,全新的「國產手機」正在向我們起來。
如有不同意見,歡迎發表【評論】。同時,歡迎【關注】我,觀看更多精彩內容。
如果美狗真的關閉了安卓系統,對其他國家也許是機會,美狗不但會損失大量客戶,也會在世界上失去信任,請問誰會敢和一個沒有信用的國家長期交往呢,安卓系統關閉肯定會有刷系統代替,就算不如安卓穩點但唯一的選擇所有人也會默默接受,美狗關閉安卓時必將是美狗淪為三九世界時
你想下 你們都用諾基亞的時候 蘋果國內沒有行貨的時候 我們是怎麼刷機越獄的 除非把網斷了 早期玩win系統 蘋果系統 安卓系統 哪來那麼多官方的 還不是都去論壇搞來的 想想我的第一台智能手機 08年那會買的 華碩p手機 買回來就無休止的刷機 那會去北京自駕游靠的是它內置的gps導航 下載的900兆不到的 凱立德破解版 雖然錯綜百出大致方向還是沒問題的 信息世界 哪有那麼容易的事 就說電腦 盜版的有多少人在用
目前全球使用的手機系統並不只是安卓和IOS,還有華為的鴻蒙、微軟的Windows Phone等等,但是安卓和IOS佔得最多,合計有9成,而安卓就達到了8成。
可以說現在的智能設備基本都是安卓系統的,包括我們的電視、智能手錶、平板電腦等。
對於安卓,都知道它是屬於谷歌的,是一種基於Linux內核(不包含GNU組件)的自由及開放源代碼的操作系統,2005年8月由Google收購注資。在2011年第一季度,android在全球的市場份額首次超過了諾基亞的塞班系統。
安卓系統的特點:
1、Google以授權的方式供給設備製造商的源代碼,分為全免費、部分收費等方式,並不是全免的;
2、安卓系統並不只是谷歌一家開發的,集合了硬體製造商、軟體開發商及電信營運商等單位,之前的華為就是谷歌安卓系統開發的重要貢獻者;
3、Android的系統架構和其操作系統一樣,採用了分層的架構。其有四個層級,從高層到低層分別是應用程序層、應用程序框架層、系統運行庫層和Linux內核層;
4、Android本身是一個許可權分立的操作系統,每個應用都以一個系統識別身份運行。Linux就是將應用與應用,應用與系統隔離開。
說白了,安卓系統就是一個搭積木式的系統,而且各個之間都獨立運行,並不是一個密不可分的封閉系統,這也是安卓得以迅速發展的原因,開發更方便。
停止安卓授權的結果
如果正在使用的安卓手機停止授權該是什麼結果?
答案是可以正常使用。
安卓就是一個程序,它通過授權後安裝在你的手機上,並不是與谷歌同步聯系並運行的,是一個獨立運行的系統。就像我們家裡的電視一樣,脫離網路也能通過U盤觀看保存的視頻、圖片等資料。
但是,新開發的功能和補丁則不會更新了,或者說使用的安卓軟體根據最新的安卓系統定做新的功能,那麼早期版本的安卓是不能使用的(部分功能而已)。
通俗地說,就是新版本會兼容舊版本的,而舊版本顯然不能達到新版本的所有功能。
小結一下,就是目前的安卓手機在使用上基本沒什麼區別的。
對了,已發布的安卓系統米國是不能封鎖的。
如果米國對安卓下狠手,或直接停止供應國內,那麼很快地鴻蒙系統將完成替代,這個不用擔心。況且米國一方面 能從授權中得到收入,另一方面安卓的存在奠定了米國 科技 的地位,且從文化、心理上影響全球 ,因此 它是不會被關閉的,而且非常怕別的系統來替代它 。
2021-11-20
沒有了互聯網,我們還有區域網,把區域網搞大了,又是一個互聯網。最不濟也是單機時代的到來,大家用藍牙,用數據線,再創一個有線的互聯網。
中國這么大,這么強大!沒有道理解決不了這個基本問題的。
想想看上個世紀末,我還在用著一個月40MB最高限制流量的網路,用著ISDN的網路,下載速度普遍在幾KB狀態,不一樣每天沖浪?雖然說這個浪小了些。
沒有了互聯網,大家就會把目光離開小小的手機屏,會看著外面來來往往的人群,建築和山野。人和人之間的交流也會多起來,視力也會好起來,朋友間的小船也不會那麼脆弱得說翻就翻。聚餐的時候也會真的聊天,而不是整齊劃一地撥弄手機!就算打個 游戲 也是頭挨著頭一起努力,而不是各自一台手機電腦的天各一方地戰斗!
安卓系統完全可以單機使用的,即使沒有互聯網,還可以做一個功能強大的記事簿,電話簿, 游戲 機,電話機,下載後的電影電視機。有什麼可怕的?就算沒有了安卓,我們一樣還有其他可以依靠的系統嘛。
可能沒有安卓這么豐富的服務,但一樣使用啊。就像我們不用WORD的套件,一樣有WPS的辦公軟體。就算沒有CAD軟體,再不濟我們也能用硫酸紙一筆一筆畫出復雜的施工圖。要永遠記得,軟體就是工具,沒有了這些工具,一樣可以 健康 向前發展!雖然說效率ke能低了許多!可當今世界其實就是因為發展太快了,造成許多的問題!
放慢發展的速度,才是解決很多問題的根本!沒有思考的發展,是最危險的!
安卓是什麼?就是一工具!沒有了錘子,我們還不吃核桃了?
何況華為的鴻蒙已經成氣候了,如果安卓不想要中國這么大的市場,作為一個中國最普通的人,用什麼?真的可以挑來挑去的么?好像不是吧?
一點小的看法,僅此而已!
一.封鎖安卓系統,為什麼會是美國在做主導?
安卓系統簡稱 Android(或機器人) ,在 2005 年 08 月 17 日被 谷歌 以 5000萬美元的低價 進行注資並收購,而安卓系統的創始人 安迪魯賓 仍現在仍然在繼續負責安卓系統的相關項目。
2007 年 11 月 5 日,谷歌宣布建立一個全球性的聯盟組織- 開放手持設備聯盟 。此聯盟組織由全球 34 家手機製造商、軟體開發商、電信運營商和晶元製造商等共同組成,並讓谷歌對安卓系統的源代碼進行正式 開源 。
谷歌公司雖然在早期對外公開稱: 安卓操作系統開源 ,但是它實際上還是美國的 科技 產物。首先谷歌這家傳統的互聯網公司是一家美國 科技 公司,另外 Android 每次的版本更新後,如果需要安裝到第三方手機廠商的手機中,需要 美國FCC機構 ( 美國聯邦通信委員會 )的批准和認證,以保證安卓的用戶隱私安全。
不難看出,谷歌開源的安卓操作系統在真正使用上確實還是會受到美國相關機構的正式授權和許可。
二.針對安卓系統,它會從哪些方面進行真正的「封鎖」?安卓系統不是開源的嗎,何來封鎖? 沒錯,安卓系統現在確實是開源的,但不代表谷歌會把操作系統中所有的許可權都交給系統開發參與者和其它廠商。谷歌它現在主要封鎖的對象是某些不遵守規則的 手機廠商 和 APP開發廠商 ,因為它們本身就具備挑戰谷歌的資格。
為了能夠讓更多人便於理解,我以 2019年穀歌限制華為使用GMS服務 等相關事件進行一一講述。
1.美國裹挾谷歌狙擊華為在海外的手機市場,並不是讓安卓閉源而是「關閉GMS服務」。
在2019年中下旬,國內非常熱門的話題是【華為在被美國不斷的進行制裁】,從電腦的Windows10操作系統的授權安裝、手機在海外無法使用谷歌的Google Play等。
其中,華為手機在歐洲無法使用谷歌GMS服務,是谷歌在面臨美國巨大壓力之下放出的最致命的一招。谷歌GMS服務,其實就是谷歌安卓系統的「地圖導航」、「瀏覽器搜索」、「應用商店」等手機系統功能的後台服務。
如果這些功能的後台都關閉,相當於手機端的大多數互聯網相關的功能也被關閉,用戶也不能繼續在華為手機上正常進行上網、支付和出行等。
2.即便開源的操作系統也需要「版本升級」,讓某些手機廠商不進行同步實現降維打擊。
除了谷歌關閉華為海外手機的GMS(Google Mobile Services)服務,很多對華為手機產品比較關心的用戶也很擔心華為現在即便能挺過美國在晶元領域方面的制裁,也逃不了安卓11的升級限制。
安卓系統升級真的很重要嗎?對現在很多手機廠商來講,真的很重要。因為現在的手機用戶對手機更多的體驗並不是在硬體方面,而是系統的操作和軟體的使用。從安卓7版本之前,很多安卓手機用戶一直反饋:安卓手機使用1年多後真的比蘋果iOS操作系統卡。而安卓操作系統升級到9.0之後,又有一些安卓用戶感覺自己的安卓手機可以繼續在使用一段時間。也就是說,谷歌安卓操作系統的版本升級一般會讓安卓老用戶的手機能夠繼續進行使用,提高系統的可操作性。
而我們擔心華為手機後面如果真的不能升級為Android11,那麼它將在系統的性能方面會與國內很多安卓手機廠商將增加差距,當然還有其它新的功能也無法進行使用。
從上面谷歌安卓系統的兩種「 封鎖 」方式來講,美國谷歌確實可以做到不用閉源也能實現對相關手機廠商的技術圍堵,而且對手機廠商來講確實比較致命。
三.面臨被封鎖的風險,我們安卓用戶真的就只能坐以待斃嗎?美國的谷歌安卓其實並不是對我們安卓用戶直接進行封鎖,而是更多的從手機廠商和APP軟體廠商開始入手。
好在華為並沒有讓很多人失望,在被谷歌關閉GMS服務後,它自己根據安卓系統多年參與研發的經驗另闢蹊徑,研發出安卓開源系統的另一個服務- HMS ,即便海外華為安卓手機用戶不能用到谷歌的GMS,也能使用華為的HMS進行正常 上網 、 在線支付 和 導航出行 等。
況且,在 2020 年的 華為開發者大會 上 余承東 也提到:華為 鴻蒙OS將在2021年的下一個新版本中直接使用在手機中,並兼容安卓操作系統,實現中國移動操作系統的獨立自主化 。這其實也是對國內外的華為手機用戶的一種堅強而有力的回應,讓華為手機用戶不用過分擔心手機的安卓操作系統會被美國谷歌直接封鎖。
結語:美國利用安卓系統對用戶進行「封鎖」,主要是為了針對一些威脅自己根本利益的高 科技 公司。通過技術上的一定打壓,也間接讓被打壓的高 科技 公司在短期內流失大量安卓用戶。
即便短期內美國確實能做到對某些高 科技 公司的技術打壓,但是長期發展的角度來看被美國打壓的高 科技 公司必將會進行高效反擊,讓流失的安卓用戶重新回歸自己的產品使用中,通過新操作系統的誕生對谷歌安卓未來形成重要挑戰。
Ⅱ 自己怎麼開發app軟體
依託第三方平台
自己明確需求,懂代碼,熟悉開發流程
APP開發完整流程
APP開發前期
開發手機APP需要了解產品定位
確定開發APP的需求,對APP進行定位。開發製作一款APP軟體需要先了解瀏覽這款App應用市場的需求,這是一項硬性標准。
評估
將項目的整體情況盡量細化,評估APP開發項目能否在規定期限完成,評估需求功能能否被實現。這是一個移動APP最終能不能在企業的戰略方向下存活下來的至關重要的一點。 APP開發過程中
確定APP的原型圖
包括用戶體驗設計(UX),APP界面的交互邏輯,以及APP功能點實現的大致狀況。
獨特的UI設計
對APP有明確的定位和構建APP原型,開始UI設計,設計用戶界面,用戶界面是APP使用者與你的APP交互的地方,應該遵循簡潔美觀,便捷的原則,能夠為用戶帶來更高的體驗度。一個完整的APP需要一個吸引用戶眼球的創意,這就需要開發者在創意策劃上有著獨到的見解。
精品樣稿展示
高質量的樣稿的展現效果是為了讓企業能夠在視覺上看到一個APP的雛形,這也就後期的代碼開發方面節省很多的時間和精力。
原生代碼開發
在UI設計和與樣稿展示以後,正式進入APP代碼的開發階段。在這一階段是實現所有前期展現效果,通過APP代碼原生開發。
深研APP開發的不懂之處
APP開發定製的技術是不斷翻新和發展的,應用APP開發人員在開發過程中很多時候都會遇到新的APP開發功能需求,既要跟現有的功能系統相結合,也要讓新開發的APP功能具有獨特性。
了解APP的系統兼容性
在開發手機APP時,要知道Android和iOS風格、布局和導航都大不相同,這需要匹配創建APP項目的每一個操作系統來滿足用戶。同時,對蘋果app而言,它需要專為操作系統而設計開發的應用。
開發手機APP需要不斷測試
定製的APP需要不斷的優化測試,而不是經過一兩次APP製作的測試就得出結果,直接把尚未開發完善的APP軟體上線,這是對企業的不負責,也是對用戶的不負責。
APP開發完成後
產品測試上線
在代碼開發完成後,就進入了測試和後期上線的階段。這是一個循序漸進的過程。在所有bug測試完成,確定沒有bug就可以在蘋果市場和安卓市場上線。
項目交付結束
APP開發測試上線後,即按照合同規定,將源碼,說明文檔,操作文檔各方面配齊交付給甲方。
上線運營推廣
成功上線後的APP就可以通過企業自身的運營推廣,發展用戶數量,讓它在行業中脫穎而出。當然如果後期存在BUG,或者更新可以提供後續服務的。在運營推廣中不斷與時俱進,維護更新,APP才能長存。
Ⅲ 車載安卓系統怎麼升級
對於導航中使用的安卓應用,可以視情況升級。升級可以分為在線升級和刷機升級,有的安卓版本在連接wifi之後提示升級那麼就可以在線直接升級,有的安卓導航需要到4s店或維修點,通過刷機升級。
隨著用戶對汽車的使用需求越來越多,汽車變得越來越智能化,車企也在IVI(車載信息娛樂系統)上開始下功夫,將智能手機的部分手機應用放到車機系統中,於是基於安卓定製開發的車機系統和蘋果的CarPlay開始流行起來。
汽車觀察在今年的CESASIA上,一款搭載原生安卓系統的Polestar2亮相了,它搭載了最新的標准化安卓系統作為其IVI,不同於國內互聯網企業和車企打造的智能車機系統,或是蘋果CarPlay和網路CarLife這樣的手機鏡像解決方案。
Polestar2採用的是直接由谷歌開發的AndroidAutomotiveOS,就彷彿有一台安卓手機直接安裝在你的車上。Polestar2也是率先搭載了該系統的汽車品牌。汽車觀察相比於不對外授權的塞班和iOS系統來說。
安卓系統又開源又免費。任何人和機構都可以免費使用谷歌安卓手機操作系統的源代碼,加上手機製造商、軟體開發商、電信運營商以及晶元製造商的支持,安卓生態迅速從手機擴展到了平板電腦、智能汽車等領域,一直火熱到現在。
Ⅳ android 的action bar有什麼作用
下面是一個actionbar的使用截圖,來源於android學習手冊,360手機助手中可下載,裡面有108個例子,源碼還有文檔
Action bar是一個標識應用程序和用戶位置的窗口功能,並且給用戶提供操作和導航模式。在大多數的情況下,當你需要突出展現用戶行為或全局導航的activity中使用action bar,因為action bar能夠使應用程序給用戶提供一致的界面,並且系統能夠很好根據不同的屏幕配置來適應操作欄的外觀。你能夠用ActionBar的對象的API來控制操作欄的行為和可見性,這些API被添加在Android3.0(API 級別 11)中。
Action bar的主要目的是:
1.提供一個用於識別應用程序的標示和用戶的位置的專用空間。
這個空間的左邊是應用的圖標或logo,以及Activity的標題。但是,如果是像當前選擇的標簽這樣的標識當前View對象的導航標簽,你可以選擇刪除Activity的標題。
2.在不同的應用程序之間提供一致的導航和視覺體驗。
Action bar提供了用於Fragment間切換的內置導航標簽。它還提供了一個用於替換導航模式或優化當前視覺效果(如按照不同條件排序的列表)的下拉列表。
3.突出Activity的關鍵操作(如「搜索」、「創建」、「共享」等),並且在可預見的方法內給用戶提供快捷的訪問。
對於關鍵的用戶操作,你能夠通過把選項菜單項作為操作項直接放到操作欄中,從而提供快捷的訪問。操作項目還能提供一個操作窗口,這個窗口給更直接的操作行為提供一個嵌入的窗口部件。沒有改進成操作項的菜單項在溢出菜單中還是有效的,用戶既可以使用設備上的菜單按鈕(設備上有按鈕的時候),也可以使用操作欄中的溢出菜單按鈕(當設備上不包含菜單按鈕時)來顯示這些操作項目。
上面的總結一下:Action bar就是替換3.0以前的tittle bar和menu。
圖1. Honeycomb Gallery應用中的操作欄,從左邊開始,依次是logo、導航選項標簽和操作項(在右邊插入的一個懸浮菜單按鈕)。
Note:If you're looking for information about the contextual action bar for displaying contextual action items, see theMenuguide.
Action Bar Design For design guidelines, read Android Design'sAction Barguide.
添加Action Bar
從Android3.0(API級別 11)開始,Action bar被包含在所有的使用Theme.Hole主題的Activity(或者是這些Activity的子類)中,當targetSdkVersion或minSdkVersion屬性被設置為「11」或更大的數值是,這個主題是默認的主題一。如:
[html] view plain print?
<manifest...>
<uses-sdkandroid:minSdkVersion="4"
android:targetSdkVersion="11"/>
...
</manifest>
<manifest ... >
<uses-sdk android:minSdkVersion="4"
android:targetSdkVersion="11" />
...
</manifest>
在這個例子中,應用程序要求最小的API版本級別是4(Android 1.6),但是它還要求了目標API版本級別是11(Android 3.0)。這樣,當應用程序運行在Android3.0或更高的版本上時,系統就會給每個Activity應用holographic 主題,這樣,每個Activity就會包含Action bar。
如果你想使用ActionBar API來進行添加導航模式和修改操作欄樣式的操作,你應該把minSdkVersion屬性設置為「11」或更大的值。有一些方法可以使你的應用支持更舊的Android版本,同時在API等級為11或更高的API等級的機器的使你的應用支持一些Action bar apis。為了保持後向兼容,請參考邊框內的內容(邊框內容如下)。
Remaining backward-compatible
If you want to provide an action bar in your applicationandremain compatible with versions of Android older than 3.0, you need to create the action bar in your activity's layout (because theActionBarclass is not available on older versions).
To help you, theAction Bar Compatibilitysample app provides an API layer and action bar layout that allows your app to use some of theActionBarAPIs and also support older versions of Android by replacing the traditional title bar with a custom action bar layout.
刪除Action bar
如果你不想要Action bar,把Activity的主題設置為Theme.Holo.NoActionBar就可以了,如:
[html] view plain print?
<activityandroid:theme="@android:style/Theme.Holo.NoActionBar">
<activity android:theme="@android:style/Theme.Holo.NoActionBar">
或者使用Action bar的 hide()方法,如下:
[java] view plain print?
ActionBaractionBar=getActionBar();
actionBar.hide();
ActionBar actionBar = getActionBar();
actionBar.hide();
當Action bar隱藏時,系統會調整你的Activity來填充當前有效的屏幕空間。你能夠使用show()方法來再次顯示操作欄。
在隱藏和刪除Action bar時,要當心為了適應被Action bar佔用的空間而導致的Activity的重新布局。如果你的Activity有規律的隱藏和顯示Action bar,你可能想要使用覆蓋模式。覆蓋模式在Activity的頂部描畫操作欄,而不是在它們所擁有的屏幕的區域。這樣,在Action bar隱藏和重新顯示時,你的布局保持不變。要使用覆蓋模式,就要給Activity創建一個主題,並且把android:windowActionBarOverlay屬性設置為true。
提示:如果你有一個刪除了Action bar的定製化的Activity主題,它把android:windowActionBar樣式屬性設置為false。但是,如果你使用了刪除Action bar的一個主題,那麼,創建窗口將不允許Action bar再顯示,因此,你不能在以後給這個Activity添加Action bar---因為getActionBar()方法將返回null。
添加操作項
有些時候,你可能想要讓用戶直接訪問選項菜單中的一個項目,因此你要把應該在Action bar中顯示的菜單項作為一個操作項來聲明。操作項能夠能夠包含一個圖標或文本標題。如果一個菜單項不作為一個操作項顯示,那麼系統就會把它放到懸浮菜單中。懸浮菜單既可以通過設備的Menu按鈕來顯示,也可以在Action bar中一個額外的按鈕來顯示。
當Activity首次啟動時,系統會調用onCreateOptionsMenu()方法給你的Activity組裝Action bar和懸浮菜單。在這個回調方法中應該載入在XML文件中定義的菜單項資源,如:
[java] view plain print?
@Override
(Menumenu){
MenuInflaterinflater=getMenuInflater();
inflater.inflate(R.menu.main_activity,menu);
returntrue;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_activity, menu);
return true;
}
圖2. 帶有圖標和文本標題的兩個操作項,和懸浮菜單按鈕。
在XML文件中,你能夠通過給<item>元素聲明android:showAsAction=」ifRoom」屬性,請求把一個菜單項作為一個操作項來顯示。用這種方式,只在有有效的空間時,菜單項才能顯示在Action bar中。如果沒有足夠的空間,這個菜單項會顯示在懸浮菜單中。
如果你的菜單項支持標題和圖標---帶有android:title和android:icon屬性---那麼默認情況下,操作項僅顯示圖標。如果你要顯示文本標題,就要給android:showAsAction屬性添加withText設置,如: