所有東西依次都放在左上角,會(huì)重疊,這個(gè)布局比較簡單,也只能放一點(diǎn)比較簡單的東西。

創(chuàng)新互聯(lián)是一家專業(yè)提供同德企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、H5頁面制作、小程序制作等業(yè)務(wù)。10年已為同德眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。
分為垂直布局( android:orientation="vertical" )和水平布局( android:orientation="horizontal" )。
垂直布局時(shí),每一行就只有一個(gè)元素,多個(gè)元素依次垂直往下;
水平布局時(shí),只有一行,每一個(gè)元素依次向右排列。
用X,Y坐標(biāo)來指定元素的位置,這種布局方式也比較簡單
在屏幕旋轉(zhuǎn)時(shí),往往會(huì)出問題,而且多個(gè)元素的時(shí)候,計(jì)算比較麻煩。
可以理解為某一個(gè)元素為參照物,來定位的布局方式。
主要屬性有:
相對于某一個(gè)元素 android:layout_below 、 android:layout_toLeftOf
相對于父元素的地方 android:layout_alignParentLeft 、 android:layout_alignParentRigh ;
每一個(gè) TableLayout 里面有表格行 TableRow , TableRow 里面可以具體定義每一個(gè)元素。每一個(gè)布局都有自己適合的方式,這五個(gè)布局元素可以相互嵌套應(yīng)用,做出美觀的界面。
Android六大基本布局分別是:線性布局LinearLayout、表格布局TableLayout、相對布局RelativeLayout、層布局FrameLayout、絕對布局AbsoluteLayout、網(wǎng)格布局GridLayout。其中,表格布局是線性布局的子類。網(wǎng)格布局是android 4.0后新增的布局。
在手機(jī)程序設(shè)計(jì)中,絕對布局基本上不用,用得相對較多的是線性布局和相對布局。
padding是站在父view的角度描述問題,它規(guī)定它里面的內(nèi)容必須與這個(gè)父view邊界的距離。margin則是站在自己的角度描述問題,規(guī)定自己和其他(上下左右)的view之間的距離,如果同一級只有一個(gè)view,那么它的效果基本上就和padding一樣了。
顯示特點(diǎn):所有子控件按照橫向或者豎向依次排列
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
子控件的用法:android:layout_weight="1" 多個(gè)控件同時(shí)使用,可以實(shí)現(xiàn)平分的效果
顯示特點(diǎn):和LinearLayout布局相似,所有子控件默認(rèn)顯示在RelativeLayout的左上角
layout_toRightOf 在指定控件的右邊
layout_toLeftOf 在指定控件的左邊
layout_above 在指定控件的上邊
layout_below 在指定控件的下邊子控件對齊關(guān)系
layout_alignRight 與指定控件右對齊
layout_alignLeft 與指定控件左對齊
layout_alignTop 與指定控件上對齊
layout_centerInParent 與父容器中間對齊 pairunte
layout_centerVertical 與父容器豎向中心對齊
layout_centerHorizontal 與父容器橫向中心對齊
layout_alignParentLeft 與父容器左邊對齊
layout_alignParentTop 與父容器上邊對齊
layout_alignParentRight 與父容器右邊對齊
layout_alignParentBottom 與父容器下邊對齊
顯示特點(diǎn):所有子控件默認(rèn)在GridLayout中橫向依次排列,當(dāng)只等每行的列數(shù)時(shí),到達(dá)指定列數(shù)
會(huì)自動(dòng)換行顯示。
layout_column 在網(wǎng)格的第幾列
layout_row 在網(wǎng)格的第幾行
layout_columnSpan 跨列
layout_rowSpan 跨行
layout_gravity 在一個(gè)網(wǎng)格中的重心位置
columnCount 每行列總數(shù)
顯示特點(diǎn):所有的子控件默認(rèn)顯示在FrameLayout的左上角,會(huì)重疊在一起顯示。
layout_gravity(設(shè)置給子控件,調(diào)整控件在容器內(nèi)的重心)
常用值:
left(左)、 right(右)、
top(上)、 bottom(下)、
center(中心)、 center_vertical(豎向中心)
center_horizontal(橫向中心)
表格布局和網(wǎng)格布局類似,但是需要注意的是,表格布局不能跨行,只能跨列
跳槽無非就是錢少了或不爽了,無論怎么樣,記住:
不要裸辭!
不要裸辭!
不要裸辭!
為什么呢?
1、裸辭就沒有錢拿了,還不如騎驢找馬。
2、裸辭之后如果一個(gè)月內(nèi)沒有找到工作,那么社保就會(huì)斷了,除非你自己找渠道交了。
3、裸辭之后真的會(huì)很頹廢!
當(dāng)初還在上班的時(shí)候就想著,裸辭了,首先花幾天時(shí)間吧簡歷完善一下,把知識(shí)點(diǎn)惡補(bǔ)一下,然后投簡歷,面試,妥妥的妥妥。
結(jié)果呢?每次裸辭之后都是:
首先躺尸一個(gè)星期;
然后用了一個(gè)星期才慢吞吞的改完簡歷;
然后海投,沒回復(fù),修改簡歷;
再次海投,面試,被虐得體無完膚,懷疑人生;
再改簡歷,再海投,一不小心中了。
當(dāng)然海投也是有個(gè)目標(biāo)范圍的。
如果不是裸辭,那么現(xiàn)在應(yīng)該還是在公司上班,在完成工作之余,就會(huì)逼著自己復(fù)習(xí)知識(shí)點(diǎn)了,起碼不會(huì)在家墮落。在家不上班就是睡覺、看電影,檣櫓灰飛煙滅,所以不要裸辭。
然并卵,我依然裸辭了。請假面試真的很煩。
onPause,假如從ActivityA啟動(dòng)B,如果B是透明的,則不會(huì)回調(diào)A的onStop方法。
方法一:
方法二:
1、寫好動(dòng)畫文件 R.anim.enter 、 R.anim.exit
2、調(diào)用 overridePendingTransition 設(shè)置動(dòng)畫
引申:如Activity設(shè)置為singleInstance,則應(yīng)該怎么設(shè)置跳轉(zhuǎn)動(dòng)畫?
1、 startService 啟動(dòng)方與Service并沒有關(guān)聯(lián),只有當(dāng)Service調(diào)用 stopSelf 或者其它組件調(diào)用 stopService 的時(shí)候服務(wù)才會(huì)終止。
2、 bindService 啟動(dòng)方綁定Service,并且可以通過Binder與之交互,當(dāng)啟動(dòng)方銷毀時(shí),也會(huì)自動(dòng)unbindService,當(dāng)所有啟動(dòng)方都unbindService之后,Service也就自動(dòng)銷毀了。
為什么呢?官方文檔是這樣寫的:
大概意思是 onReceive() 執(zhí)行完畢之后,它所在的進(jìn)程就會(huì)變成低優(yōu)先級進(jìn)程,極易被系統(tǒng)殺死。
分兩種情況分析一下:
一、收到廣播的時(shí)候,應(yīng)用正在運(yùn)行:
此時(shí)如果沒有在Manifest中設(shè)置了獨(dú)立進(jìn)程,則 onReceive() 就直接在主進(jìn)程主線程執(zhí)行,這里很明顯不能執(zhí)行耗時(shí)操作。
二、收到廣播的時(shí)候,應(yīng)用沒有啟動(dòng):
這時(shí)候系統(tǒng)會(huì)啟動(dòng)一個(gè)進(jìn)程去執(zhí)行 onReceive() ,(如果Manifest中沒有設(shè)置進(jìn)程名,則進(jìn)程名為包名),(插一句,所有進(jìn)程都會(huì)創(chuàng)建一個(gè)Application實(shí)例),當(dāng)onReceive執(zhí)行完畢之后,此進(jìn)程就變成低優(yōu)先級了,隨時(shí)有可能被系統(tǒng)殺死,如果你在onReceive里面啟動(dòng)了線程執(zhí)行耗時(shí)任務(wù),那很有可能子線程沒執(zhí)行完畢,進(jìn)程就被殺死了,進(jìn)程沒了,線程自然就掛了。
那么確實(shí)要執(zhí)行耗時(shí)操作呢,怎么辦?
方法一:goAsync()
方法二:schedule a JobService from the receiver using the JobScheduler
三種實(shí)現(xiàn)方法
1、繼承現(xiàn)有的組件,如TextView等,進(jìn)行拓展。
2、繼承ViewGroup,自定義布局。
3、繼承View,在onDraw()中描繪。
onMeasure()
onLayout()
onDraw()
其它
attachToRoot 從字面理解就是是否綁定到 root 上面去了。
1、 attachToRoot=true :則返回的view為root的子view;
2、 attachToRoot=false :則返回的view是個(gè)單獨(dú)的view,傳入的root只是提供一些參數(shù)給view使用而已。
那么這里不傳入 attachToRoot 呢?那就看root是否為空了,如果傳入root不為空,則默認(rèn)綁定到root,作為root的子view返回。
也就是所謂的Frame動(dòng)畫。指通過指定每一幀的圖片和播放時(shí)間,有序的進(jìn)行播放而形成動(dòng)畫效果。
可以通過插入器 Interpolator 控制動(dòng)畫的變化速度。
也就是所謂補(bǔ)間動(dòng)畫。指通過指定View的初始狀態(tài)、變化時(shí)間、方式,通過一系列的算法去進(jìn)行圖形變換,從而形成動(dòng)畫效果,主要有 AlphaAnimation 、 TranslateAnimation 、 ScaleAnimation 、 RotateAnimation 四種。
注意:只是在視圖層實(shí)現(xiàn)了動(dòng)畫效果,并沒有真正改變View的屬性。
屬性動(dòng)畫,通過不斷的改變View的屬性,不斷的重繪而形成動(dòng)畫效果。相比于視圖動(dòng)畫,View的屬性是真正改變了。
注意:Android 3.0(API 11)以上才支持。
最常用的類有 ObjectAnimator
P.S. 我不明白cancel存在的意義。
另外, DialogFragment 是沒有cancel的。
ping
內(nèi)存大致分為三個(gè)區(qū):棧區(qū)、堆區(qū)、方法區(qū)。
棧區(qū)
堆區(qū)
方法區(qū)
JAVA不允許手動(dòng)釋放內(nèi)存,只能通過垃圾回收程序不定期對那些不再被引用的對象進(jìn)行回收。
那么怎么判斷哪些對象需要回收?
1、引用計(jì)數(shù)法
就是給對象添加一個(gè)引用計(jì)數(shù)器,引用對象時(shí)+1,引用失效時(shí)-1。但是這種方法解決不了對象相互引用的情況。
2、可達(dá)性分析法
通過一系列“GCRoots”對象作為起點(diǎn)進(jìn)行搜索,當(dāng)GCRoots和一個(gè)對象之間沒有可達(dá)路徑,則認(rèn)為此對象不可用,但是不可用不一定會(huì)成為可回收對象。
編寫AIDL文件,定義接口。
編譯生成JAVA文件。
定義進(jìn)程級Service,onBind中返回Interface.Stub()。
onServiceConnected中Interface aidl = Interface.Stub.asInterface(service);
把已修復(fù)的class文件打包成dex文件,網(wǎng)絡(luò)傳輸?shù)接脩羰謾C(jī)中,利用類加載器把這些類加載到類隊(duì)列的前面即可。
【未完待續(xù)】
如果公司錄用我,不管是三年還是五年,首先我都會(huì)先把公司的任務(wù)做好,然后不斷深入研究Android的相關(guān)技術(shù),特別是Android源碼,了解Android底層原理,以便更好的優(yōu)化性能,避免一些不必要的奇葩問題,還有就是研究一些新的框架的原理,學(xué)習(xí)別人的思維。最后就是學(xué)習(xí)周邊語言,比如后臺(tái),前端等等。
當(dāng)前標(biāo)題:android常用,android sdk
分享鏈接:http://chinadenli.net/article43/dsephhs.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站建設(shè)、電子商務(wù)、虛擬主機(jī)、面包屑導(dǎo)航、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)