csdnandroid入門
① Android入門計劃<二> ---- 三大常用布局
android現在可以說是一共有六大布局,但是之前的幾乎已經不用,有興趣的可以自行網路,這里直說現在常用的三個布局,還有常用的屬性。
顧名思義:線性布局 線性就是指的一條線,是個直的,在手機屏幕上,你要麼橫著,要麼豎著,別給我拐彎。拐彎會挨打的。
emmmm,寫一個小東西簡單說一下吧。
先說一下通用寬高屬性:
layout_width與layout_height
值:match_parent 你可以理解為全屏
值:wrap_content 填充內容,指的是其大小會根據內容的大小而定
值:fill_parent 用新版的同學發現它已經被棄用了,指的是填充,有興趣可以自行左轉了解更多。
好了開始吧:
orientation屬性:vertical 垂直方向如圖
orientation屬性:horizontal 水平方向如圖
擴展:LinearLayout分割線
divider:分割線資源
showDividers:顯示方式
middle:控制項之間
end最後
none 沒有
beginning 開始
如果我們想實現這個布局,用RelativeLayout怎麼做呢?
首先根布局是RelativeLayout
*我們什麼都不做
我們會發現,布局上只能看到一個view,就是最後寫的那個view。
這里意思是,我rl內部所有的子view都是想對於我rl本身內部的位置。
我們什麼都不做會默認在左上角。
我們來介紹一個屬性
android:layout_toRightOf ------ 意思為:在xxx的右邊
效果如圖
還是介紹一個屬性:
android:layout_below ----- 意思是:在xxx的下面
效果如圖段世枝:
再來介紹三個屬性:
android:layout_centerHorizontal ---- 相對於父控制項rl 水平居中
android:layout_alignParentLeft ---- 相對於父控制項rl 最左側
android:layout_alignParentRight ---- 相對於父控制項rl 最右側
效果如圖:(布局很醜,不要介意)
我們有相對控制項右邊,下面,當然也有左邊,上面。 有相對於父控制項最左最右,也要有最上最下,水平居中自然還會有垂直居中,還有直接居中。
我們來分別結合看一下效果:
1、先看一下居中效果
垂直居中:android:layout_centerVertical="true"
直接居中:android:layout_centerInParent="true"
2、再來看一下相對上和左
android:layout_above: 相對於xx控制項上方
android:layout_toLeftOf: 相對於xx控制項左邊
那麼就會有人問了,這感覺有點不對啊,我是想在控制項的左邊,為啥它離這么遠呢?返盯
這張截圖,我是別有深意的,請自己看居中控制項的握敏有條預覽輔助線: 我們看到兩個控制項確實在居中控制項的相對位置,可是並沒有移動到居中控制項的正上方和正左方。(後面正右方正下方同理)
我們知道,我們的控制項可以相對於父控制項垂直、水平和直接 居中。
雖然我們的居中控制項居中了,但是所想依賴它的控制項並沒有,所以我們再來調整一下:
關鍵位置已經在圖中用箭頭標出。
cl的由於是谷歌推出的新布局,雖然現在已經不能叫新了,作者這邊不單獨出教程了,這里推薦一個外鏈:
約束布局ConstraintLayout看這一篇就夠了
文章寫的相當不錯。學習時間可能較長, 還希望大家認真學習。
這節課就到這里。下課
② Android編程開發怎麼學_安卓編程入門自學
學習分三個階段:
1,Android基礎階段:平台架構特性(JAVA/C)Market/應用程序組件環境搭建與部署/打包與發布AVD/DDMS/AAPT調試與測試相關資源訪問/資源製作Activity/Service/BroadcastReceiver/ContentProvider/原理(生命周期)及深層實現
2,Android進階初級:組件Widget/菜單Menu/布局Layout詳解Xml解析(Pull/Dom/Sax)/JNI解析SQL資料庫原理,。
SQLite//File詳解多媒體Audio/Video/Camera詳解
3,Android進階高級:藍牙/WIFISMS/MMS應用實現深層次解析GPS原理。
實現/進行定位/跟蹤/查找/趨近警告以及Geocoder正逆向編解碼等技術細節2D圖形庫(Graphics/View)詳解SDCARD/感測器/手勢應用實現
(2)csdnandroid入門擴展閱讀:
知識體系
1、Unix/Linux平台技術:基本命令,Linux下的開發環境
2、企業級資料庫技術:SQL語言、SQL語句調優、Oracle資料庫技術
3、Java語言核心技術:Java語言基礎、Java面向對象編程、JDK核心API、Java集合框架、Java網路編程、JavaI/O編程、Java多線程編程、Java異常機制、Java安全、JDBC、XML
4、軟體工程和設兆祥計模式:軟體工程概述、配置管理及SVN、UML、基本設計模式
5、Android應用開發基礎:Android開發平台、EclipseADT開發環境、AVD及感測模擬器調試、Android核心組件、Android常用組件、Android高級組件、文件及網路訪問、SQLite資料庫編程、後台服務編程
6、互聯網核心技術:HTML、CSS、JavaScript、好薯JQuery、Ajax應用
7、Android高級應用開發:音頻視頻攝像頭、互聯網應用、GPS和位置服務、GoogleMap、2DD繪制、感測器開發、游戲開發、電話及SMS服務、網路BluetoothWi-Fi等。
8、Android系統級開發:移植、驅動、NDK(C方向)。
9、JavaEE核心技術:Servlet核心技術、JSP核心技術、Struts、Spring、Hibernate框架友猜者。
③ 安卓開發怎麼入門
1、安卓開發書籍:學習安卓,可以選擇報培運絕訓班,也可以選擇看視頻,也可以去請求高手。但是如果手中擁有一本好的安卓開發書籍,往往可以起到事半功倍的作用。
2、安卓開發必知的一些開源庫:現在,安卓開發已經逐漸成熟。在安卓開發過程中,選擇開源庫,需要根據APP。不過無論出現多少安卓開發工具,開源庫的重要性都是不言而喻。為大家精選的安卓開發開源庫,主要包括Volley、ActiveAndroid、ActiveAndroid_Android輕量級ORM框架等。
3、安卓兼容庫:Android兼容庫很多,主要包括ActionBarSherlock、ActionBarCompact、NineOldAndroids、AndroidSupportV4、NavigationDrawer等。
4、翻牆/教程:安卓開發需要的資源很多團槐,為大家精選了基本教程,主要有教程GoogleAndroid官方教程、Android教程、Android視頻學習推薦、解析Android架構設計原則等。
5、安卓基礎:安卓基礎知識,主要有Android四大基本組件介紹與生命周期、ListView的基本使用與優化、Android系統用於Activity的標准Intent、Android屏幕適配、Android中SQLite應用詳解、AndroidFragment完全解析等。
6、開發環境:大家都知道,安卓開發之前,第一步就是搭建環境。開發環境所需要的資料、軟體、教程。
7、安卓中級:上面的資源都熟悉之後,你將進入安卓開發中級階段。安卓開發中級,需要了解的喲安卓應用程序的生命周期、安卓布局優化、androidservice完全解析等。
8、安卓設計/進階/開源項目:為了開發者快速了旁或姿解當前一些流行的Android開源庫,精選了GitHub排名前100名的安卓項目、Android個性化控制項(View)開源項目等。
④ 安卓開發如何入門
我幹了3年Androidsdk開發,覺得到了瓶勁沒法更進一步,於是譽信花了一年多點時間,大概摸到點門徑。根據前輩的經驗,Android底層完全入門需要兩年。
先說下我的入門過程:
第零步,下載源碼,我下的4.2的,框架層源碼10G,內核2G多,ctags給框架層建的標簽文件都有600M,當時讓我有點震撼,用的vimctagscscope來閱讀,還算不錯,架構挺清晰的。
第一步,我找到了一本好書《Android的設計與實現第一卷》它講了Android框架層的啟動,初始化,服務框架初始化,Binder,消息循環,。據作者說後面會出講UI子系統的第二卷,拭目以待。其實這本書看了幾十頁我就發現需要第二步的知識,否則看不下去,於是跳去第二步。
第二步,學習Linux系統編程,在看《Android的設計與實現》的時候我發現,框架層的Native部分,全是Linux編程。為了掌握這部分知識,我花了4個月學習了《Linux系統編程手冊》(TLPI)這本1000多頁的書,我以前是搞WIndows文件系統這塊的,所以C語言還比較熟,TLPI的習題很有意思,量也比較大,堅持下來還是收獲很多。
第三步,花了4個月學習了一些Linux內核的知識,看了LKD,PLKA看了一半多。越學越沒底,覺得不懂得越來越多,不過這個也正常,只有靠慢慢磨,估計以後要不斷的磨這塊。
第四步,回頭看Android源碼,這次一口氣看完了《Android的設計與實現第一卷》,終於對框架層有了譜。同時真的數次把我看暈,前面看Linux內核源碼都沒這么暈,不斷在Java層和Native層之間跳有點磨腦漿。其中我又覺得Java的基礎沒有打太牢,回去補了一個月的《CoreJava》第八版。但是這書沒有涉及UI子系統,於是又看了《Android內核剖析》
第五步,《Android內核剖析》(這本書實際上是講框架層的,作者也是個搞嵌入式的,所以他在寫框架層的時候文筆不太好,很羅嗦,不過還是有很多看點,到他後來寫做ROM,玩開發板時估計是說到了搭滲他的本行,一下子遛起來了看得出還是挺有水平的,這本書知識有點舊畢竟講的是2.3很多代碼已經過時,但是作者很多點子很有參考價值)這本書講UI子系統和按鍵/觸摸消息處理系統還是很有分量的,尤其13章View繪制那裡,結合源碼研究很有收獲。而後面他講編譯框架和ROM相關的東西都是挺寶貴的資料。
第六步,為了再補一下其他諸如電源管理模塊等子系統的知識看了,《深入理解android》系列,個人認為這個系列看起來有點不太舒服,不過作為補充印證還是比較有價值。
第七步,《Android系統源代碼情景分析》,羅升陽的源碼分析大作,比《Android的設計與實現》分析得更細致,但缺點是涉及到模塊比較少,選用的源碼也比《Android的設計與實現》更舊一點。看完書後需要去研究作者的博客,東西挺多的,一定讓你滿意。
第八步,買塊開發板自己玩。這步我還沒走到,原因是我覺得我還差點准備知識。可能要再幾個月,到時准備入塊6410或者樹莓派。
最後,由於我11年以前都是搞Windows這塊的,所以對Linux知識不是很了解,不得已看了這么些書,如果是一直知虛脊做Linux的人,很多步驟估計可以省掉了。直接上源碼才是正道。
我本身做著移動GIS開發的工作,學框架層全是因為興趣,但招聘平台Android框架層開發人員還是蠻有競爭力的有不少定製ROM,智能電視的工作都處於人才難求狀態,畢竟有一定的門檻,現在各種ios培訓,讓奔著錢干開發的人紛紛湧入,而ios只能幹sdk開發的缺點就暴露出來了,一堆新手老手,菜鳥大牛全擠在SDK開發這塊,我覺得不太妙。反觀Android這邊,雖然入門菜鳥沒有搞ios來錢,但是可持續性很好,從sdk-》框架》驅動》內核這樣幹下去。干著干著發現自己漸漸變成了Linux開發者/嵌入式開發者的人也不少,新人,老手,菜鳥大牛各居其位,層次性很好。