㈠ 在android中如何讓布局居中
兩種方法:
圖形化設計界面中:選中要居中的組件。在右邊的「屬性欄」(前提是你沒有把它隱藏掉)中的Gravity一欄選擇center_vertical或者center_horizontal或者center。分別表示在父布局中垂直居中、水平居中、中心。
xml代碼界面當中:android:layout_gravity="center_vertical或center_horizontal或center"
㈡ Android 常見布局
Android六大基本布局分別是:線性布局LinearLayout、表格布局TableLayout、相對布局RelativeLayout、層布局FrameLayout、絕對布局AbsoluteLayout、網格布局GridLayout。其中,表格布局是線性布局的子類。網格布局是android 4.0後新增的布局。
在手機程序設計中,絕對布局基本上不用,用得相對較多的是線性布局和相對布局。
padding是站在父view的角度描述問題,它規定它裡面的內容必須與這個父view邊界的距離。margin則是站在自己的角度描述問題,規定自己和其他(上下左右)的view之間的距離,如果同一級只有一個view,那麼它的效果基本上就和padding一樣了。
顯示特點:所有子控制項按照橫向或者豎向依次排列
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
left(左)、right(右)、top(上)、bottom(下)、center(中心)、
enter_vertical(豎向中心)、center_horizontal(橫向中心)
子控制項的用法:android:layout_weight="1" 多個控制項同時使用,可以實現平分的效果
顯示特點:和LinearLayout布局相似,所有子控制項默認顯示在RelativeLayout的左上角
layout_toRightOf 在指定控制項的右邊
layout_toLeftOf 在指定控制項的左邊
layout_above 在指定控制項的上邊
layout_below 在指定控制項的下邊子控制項對齊關系
layout_alignRight 與指定控制項右對齊
layout_alignLeft 與指定控制項左對齊
layout_alignTop 與指定控制項上對齊
layout_centerInParent 與父容器中間對齊 pairunte
layout_centerVertical 與父容器豎向中心對齊
layout_centerHorizontal 與父容器橫向中心對齊
layout_alignParentLeft 與父容器左邊對齊
layout_alignParentTop 與父容器上邊對齊
layout_alignParentRight 與父容器右邊對齊
layout_alignParentBottom 與父容器下邊對齊
顯示特點:所有子控制項默認在GridLayout中橫向依次排列,當只等每行的列數時,到達指定列數
會自動換行顯示。
layout_column 在網格的第幾列
layout_row 在網格的第幾行
layout_columnSpan 跨列
layout_rowSpan 跨行
layout_gravity 在一個網格中的重心位置
columnCount 每行列總數
顯示特點:所有的子控制項默認顯示在FrameLayout的左上角,會重疊在一起顯示。
layout_gravity(設置給子控制項,調整控制項在容器內的重心)
常用值:
left(左)、 right(右)、
top(上)、 bottom(下)、
center(中心)、 center_vertical(豎向中心)
center_horizontal(橫向中心)
表格布局和網格布局類似,但是需要注意的是,表格布局不能跨行,只能跨列
㈢ 請介紹下Android中常用的五種布局,分別的布局方式。謝謝!急
Linearlayout 線性布局
Relativelayout 相對布局
FrameLayout 框架布局
TableLayout 表格布局
AbsoluteLayout 絕對布局(不建議使用野笑,最常用的頌好含還是以襪派上四種)
㈣ android中有幾種布局技術,各自優缺點
在4.0以前版本中一共有五種布局,都是ViewGroup的子類。分別是AbsoluteLayout、RelativeLayout、LinearLayout、FrameLayout、TableLayout。而TableLayout是LinearLayout的子類。(中文分別是:絕對布局、相對布局、線性布局念弊敏、幀布局、表格布局)。
在2.2作業系統中將AbsoluteLayout過期。而目前FrameLayout、TableLayout也逐漸少用。
在4.0之後又新增GridLayout。(GridLayout最經典的案例是計算器介面)
總之,Android中一共有六種布局。目前推薦使用RelativeLayout、LinearLayout、GridLayout三種布局。
一般簡單的布局就用LinearLayout,復雜點的用RelativeLayout(可以防止多層巢狀),像FrameLayout,裡面的控制元件是重疊的,AbsoluteLayout裡面控制元件位置是絕對的,在螢幕適配方面就不行了。
xml布局簡單,推薦使用;程式碼布局可以實現更豐富的功能。
具體使用根據你自己專案的需求來選擇。
RAID是「Rendant Array of Independent Disk」的縮寫,中文意思是獨立冗餘磁碟陣列。
主要包含RAID 0~RAID 7等數個規范,它們的側重點各不相同,常見的規范有如下幾種:
RAID 0:無差錯控制的帶區組
要實現RAID0必須要有兩個以上硬碟驅動器,RAID0實現了帶區組,資料並不是儲存在一個硬碟上,而是分成資料塊儲存在不同驅動器上。因為將資料分布在不同驅動器上,所以資料吞吐率大大提高,驅動器的負載也比較平衡。如果剛好所需要的資料在不同的驅動器上效率最好。它不需要計算校驗碼,實現容易。它的缺點是它沒有資料差錯控制,如果一個驅動器中的資料發生錯誤,即使其它盤上的資料正確也無濟於事了。不應該將它用於對資料穩定性要求高的場合。如果使用者進卜派行圖象(包括動畫)編輯和其它要求傳輸比較大的場合使用RAID0比較合適。同時,RAID可以提高資料傳輸速率,比如所需讀取的檔案分布在兩個硬碟上,這兩個硬碟可以同時讀取。那麼原來讀取同樣檔案的時間被縮短為1/2。在所有的級別中,RAID 0的速度是最快的。但是RAID 0沒有冗餘功能的,如果一個磁碟(物理)損壞,則所有的資料都無法使用。
RAID 1:鏡象結構
raid1對於使用這種RAID1結構的裝置來說,RAID控制器必須能夠同時對兩個盤進行讀操作和對兩個鏡象盤進行寫操作。通過下面的結構圖您也可以看到必須有兩個驅動器。因為是鏡象結構在一組盤出現問題時,可以使用鏡象,提高系統的容錯能力。它比較容易設計和實現。每讀一次盤只能讀出一塊資料,也就是說資料塊傳送速率與單獨的盤的讀取速率相同。因為RAID1的校驗十分完備,因此對系統的處理能力有很大的影響,通常的RAID功能由軟體實現,而這樣的實現方法在伺服器負載比較重的時候會大大影響伺服器效率。當您的系統需要極高的可靠性時,如進行資料統計,那麼使用RAID1比較合適。而且RAID1技術支援「熱替換」,即不斷電的情況下對故障磁碟進行更換,更換完畢只要從映象盤上恢復資料即可。當主仔枝硬碟損壞時,映象硬碟就可以代替主硬碟工作。映象硬碟相當於一個備份盤,可想而知,這種硬碟模式的安全性是非常高的,RAID 1的資料安全性在所有的RAID級別上來說是最好的。但是其磁碟的利用率卻只有50%,是所有RAID級別中最低的。
RAID2:帶海明碼校驗
從概念上講,RAID 2 同RAID 3類似,兩者都是將資料條塊化分布於不同的硬碟上, 條塊單位為位或字 節。然而RAID 2 使用一定的編碼技術來提供錯誤檢查及恢復。這種編碼技術需要多個磁碟存放檢查及恢復資訊,使得RAID 2技術實施更復雜。因此,在商業環境中很少使用。下圖右邊的各個磁碟上是資料的各個位,由一個數據不同的位運算得到的海明校驗碼可以儲存另一組磁碟上,具體情況請見下圖。由於海明碼的特點,它可以在資料發生錯誤的情況下將錯誤校正,以保證輸出的正確。它的資料傳送速率相當高,如果希望達到比較理想的速度,那最好提高儲存校驗碼ECC碼的硬碟,對於控制器的設計來說,它又比RAID3,4或5要簡單。沒有免費的午餐,這里也一樣,要利用海明碼,必須要付出資料冗餘的代價。輸出資料的速率與驅動器組中速度最慢的相等。
RAID3:帶奇偶校驗碼的並行傳送
raid3這種校驗碼與RAID2不同,只能查錯不能糾錯。它訪問資料時一次處理一個帶區,這樣可以提高讀取和寫入速度,它像RAID 0一樣以並行的方式來存放資料,但速度沒有RAID 0快。校驗碼在寫入資料時產生並儲存在另一個磁碟上。需要實現時使用者必須要有三個以上的驅動器,寫入速率與讀出速率都很高,因為校驗位比較少,因此計算時間相對而言比較少。用軟體實現RAID控制將是十分困難的,控制器的實現也不是很容易。它主要用於圖形(包括動畫)等要求吞吐率比較高的場合。不同於RAID 2,RAID 3使用單塊磁碟存放奇偶校驗資訊。如果一塊磁碟失效,奇偶盤及其他資料盤可以重新產生資料。如果奇偶盤失效,則不影響資料使用。RAID 3對於大量的連續資料可提供很好的傳輸率,但對於隨機資料,奇偶盤會成為寫操作的瓶頸。利用單獨的校驗盤來保護資料雖然沒有映象的安全性高,但是硬碟利用率得到了很大的提高,為(n-1)/n。
RAID4:帶奇偶校驗碼的獨立磁碟結構
raid4RAID4和RAID3很像,不同的是,它對資料的訪問是按資料塊進行的,也就是按磁碟進行的,每次是一個盤。在圖上可以這么看,RAID3是一次一橫條,而RAID4一次一豎條。它的特點和RAID3也挺像,不過在失敗恢復時,它的難度可要比RAID3大得多了,控制器的設計難度也要大許多,而且訪問資料的效率不怎麼好。
RAID5:分散式奇偶校驗的獨立磁碟結構
RAID5清晰圖片從它的示意圖上可以看到,它的奇偶校驗碼存在於所有磁碟上,其中的p0代表第0帶區的奇偶校驗值,其它的意思也相同。RAID5的讀出效率很高,寫入效率一般,塊式的集體訪問效率不錯。因為奇偶校驗碼在不同的磁碟上,所以提高了可靠性,允許單個磁碟出錯。RAID 5也是以資料的校驗位來保證資料的安全,但它不是以單獨硬碟來存放資料的校驗位,而是將資料段的校驗位互動存放於各個硬碟上。這樣,任何一個硬碟損壞,都可以根據其它硬碟上的校驗位來重建損壞的資料。硬碟的利用率為n-1。但是它對資料傳輸的並行性解決不好,而且控制器的設計也相當困難。RAID 3 與RAID 5相比,重要的區別在於RAID 3每進行一次資料傳輸,需涉及到所有的陣列盤。而對於RAID 5來說,大部分資料傳輸只對一塊磁碟操作,可進行並行操作。在RAID 5中有「寫損失」,即每一次寫操作,將產生四個實際的讀/寫操作,其中兩次讀舊的資料及奇偶資訊,兩次寫新的資料及奇偶資訊。RAID-5的話,優點是提供了冗餘性(支援一塊盤掉線後仍然正常執行),磁碟空間利用率較高(N-1/N),讀寫速度較快(N-1倍)。RAID5最大的好處是在一塊盤掉線的情況下,RAID照常工作,相對於RAID0必須每一塊盤都正常才可以正常工作的狀況容錯效能好多了。因此RAID5是RAID級別中最常見的一個型別。RAID5校驗位即P位是通過其它條帶資料做異或(xor)求得的。計算公式為P=D0xorD1xorD2…xorDn,其中p代表校驗塊,Dn代表相應的資料塊,xor是數學運運算元號異或。
RAID5校驗位演演算法詳解
P=D1 xor D2 xor D3 … xor Dn (D1,D2,D3 …Dn為資料塊,P為校驗,xor為異或運算)
XOR(Exclusive OR)的校驗原理如下表:
A值 B值 Xor結果
0 0 0
1 0 1
0 1 1
1 1 0
這里的A與B值就代表了兩個位,從中可以發現,A與B一樣時,XOR(非或又稱"非異或")結果為0,A與B不一樣時,XOR結果就是1,如果知道XOR結果,A和B中的任何兩個數值,就可以反推出剩下的一個數值。比如A為1,XOR結果為1,那麼B肯定為0,如果XOR結果為0,那麼B肯定為1。這就是XOR編碼與校驗的基本原理。
RAID6:兩種儲存的奇偶校驗碼的磁碟結構
raid6名字很長,但是如果看到圖,大家立刻會明白是為什麼,請注意p0代表第0帶區的奇偶校驗值,而pA代表資料塊A的奇偶校驗值。它是對RAID5的擴充套件,主要是用於要求資料絕對不能出錯的場合。當然了,由於引入了第二種奇偶校驗值,所以需要N+2個磁碟,同時對控制器的設計變得十分復雜,寫入速度也不好,用於計算奇偶校驗值和驗證資料正確性所花費的時間比較多,造成了不必須的負載。我想除了軍隊沒有人用得起這種東西。
常見的RAID6組建型別RAID 6(6D + 2P)
1 RAID 6(6D + 2P)原理
和RAID 5相似,RAID 6(6D + 2P)根據條帶化的資料生成校驗資訊,條帶化資料和校驗資料一起分散儲存到RAID組的各個磁碟上。在圖1中,D0,D1,D2,D3,D4和D5是條帶化的資料,P代表校驗資料,Q是第二份校驗資料。
RAID 6(6D + 2P)根據條帶化的資料生成校驗資訊,條帶化資料和校驗資料一起分散儲存到RAID組的各個磁碟上
RAID 6校驗資料生成公式(P和Q):
P的生成用了異或
P = D0 XOR D1 XOR D2 XOR D3 XOR D4 XOR D5
Q的生成用了系數和異或
Q = A0*D0 XOR A1*D1 XOR A2*D2 XOR A3*D3 XOR A4*D4 XOR A5*D5
D0~D5:條帶化資料
A0~A5:系數
XOR:異或
*:乘
在RAID 6中,當有1塊磁碟出故障的時候,利用公式1恢復資料,這個過程是和RAID 5一樣的。而當有2塊磁碟同時出故障的時候,就需要同時用公式1和公式2來恢復資料了。
各系數A0~A5是線性無關的系數,在D0,D1,D2,D3,D4,D5,P,Q中有兩個未知數的情況下,也可以聯列求解兩個方程得出兩個未知數的值。這樣在一個RAID組中有兩塊磁碟同時壞的情況下,也可以恢復資料。
上面描述的是校驗資料生成的演演算法。其實RAID 6的核心就是有兩份檢驗資料,以保證兩塊磁碟同時出故障的時候,也能保障資料的安全。
RAID7:優化的高速資料傳送磁碟結構
RAID7所有的I/O傳送均是同步進行的,可以分別控制,這樣提高了系統的並行性,提高系統訪問資料的速度;每個磁碟都帶有高速緩沖儲存器,實時作業系統可以使用任何實時操作晶片,達到不同實時系統的需要。允許使用SNMP協議進行管理和監視,可以對校驗區指定獨立的傳送通道以提高效率。可以連線多台主機,因為加入高速緩沖儲存器,當多使用者訪問系統時,訪問時間幾乎接近於0。由於採用並行結構,因此資料訪問效率大大提高。需要注意的是它引入了一個高速緩沖儲存器,這有利有弊,因為一旦系統斷電,在高速緩沖儲存器內的資料就會全部丟失,因此需要和UPS一起工作。當然了,這么快的東西,價格也非常昂貴。
RAID10/01:高可靠性與高效磁碟結構
這種結構無非是一個帶區結構加一個鏡象結構,因為兩種結構各有優缺點,因此可以相互補充,達到既高效又高速還可以互為映象的目的。大家可以結合兩種結構的優點和缺點來理解這種新結構。這種新結構的價格高,可擴充性不好。主要用於容量不大,但要求速度和差錯控制的資料庫中。
其中可分為兩種組合:RAID10和RAID01
RAID 10是先鏡射再分割槽資料。是將所有硬碟分為兩組,視為是RAID 0的最低組合,然後將這兩組各自視為RAID 1運作。RAID 10有著不錯的讀取速度,而且擁有比RAID 0更高的資料保護性。
RAID 01則是跟RAID 10的程式相反,是先分割槽再將資料鏡射到兩組硬碟。它將所有的硬碟分為兩組,變成RAID 1的最低組合,而將兩組硬碟各自視為RAID 0運作。RAID 01比起RAID 10有著更快的讀寫速度,不過也多了一些會讓整個硬碟組停止運轉的機率;因為只要同一組的硬碟全部損毀,RAID 01就會停止運作,而RAID 10則可以在犧牲RAID 0的優勢下正常運作。
RAID 10巧妙的利用了RAID 0的速度以及RAID 1的保護兩種特性,不過它的缺點是需要的硬碟數較多,因為至少必須擁有四個以上的偶數硬碟才能使用。
RAID 50:被稱為分布奇偶位陣列條帶
同RAID 10相仿的,它具有RAID 5和RAID 0的共同特性。它由兩組RAID 5磁碟組成(每組最少3個),每一組都使用了分散式奇偶位,而兩組硬碟再組建成RAID 0,實驗跨磁碟抽取資料。RAID 50提供可靠的資料儲存和優秀的整體效能,並支援更大的捲尺寸。即使兩個物理磁碟發生故障(每個陣列中一個),資料也可以順利恢復過來。
RAID 50最少需要6個驅動器,它最適合需要高可靠性儲存、高讀取速度、高資料傳輸效能的應用。這些應用包括事務處理和有許多使用者存取小檔案的辦公應用程式。
RAID 53:稱為高效資料傳送磁碟結構
結構的實施同Level 0資料條陣列,其中,每一段都是一個RAID 3陣列。它的冗餘與容錯能力同RAID 3。這對需要具有高資料傳輸率的RAID 3配置的系統有益,但是它價格昂貴、效率偏低。
RAID 1.5:一個新生的磁碟陣列方式
它具有RAID 0+1的特性,而不同的是,它的實現只需要2個硬碟。
從表面上來看,組建RAID 1.5後的磁碟,兩個都具有相同的資料。當然,RAID 1.5也是一種不能完全利用磁碟空間的磁碟陣列模式,因此,兩個80GB的硬碟在組建RAID 1.5後,和RAID 1是一樣的,即只有80GB的實際使用空間,另外80GB是它的備份資料。如果把兩個硬碟分開,分別把他們執行在原系統,也是暢通無阻的。但通過實際應用,我們發現如果兩個硬碟在分開執行後,其資料的輕微改變都會引起再次重組後的磁碟陣列,沒法實現完全的資料恢復,而是以資料較少的磁碟為准。
:ke../view/7102.htm
一是基於埠的靜態vlan,一是基於mac地址的動態vlan,
布局最好是根據電路的原理先把元器件布局好,布線的話,數位電路用自動布線加手工調整,也可以先把關鍵的部分手工布好,再自動走其他的線,最後手工調整,類比電路、高頻電路都是需要手工布線的 自動的快,手動的是合理
一般是先自動後再用手動更改自動布線效率高,手工布線更合理
air sole:元祖級氣墊,厚1/2英寸,具有一定減震力現在常常用於入門級球鞋中。分為內建和外接。
zoom air:在一個較薄的氣墊中加入立體織物,以增強其彈性,多用於前掌內建,以增加啟動速度。
zoom cage:zoom air的加大版本,在強調彈性的同時加強了緩震性,但是由於設計因素,因此外部基本上加上龍骨作為支撐。多用於跑鞋。
air max:氣體容量大,緩震效果一流,內部分隔為不同氣室,氣壓不同,以增強穩定性。多用於中鋒鞋或者後掌。腳感較硬,沉重。
total max:理解為巨型max就可以了。
tuned air:一種非常好的氣墊,內部半圓形球體可以調節氣壓,緩震效果一流,但是成本太高,已經幾乎絕跡,但是有的跑鞋上貌似還有使用的說。
shox:工程橡膠一體鑄成的圓柱體結構,機械緩震體系,依賴形變來緩沖並反彈,目前唯一經過證實可以提高彈跳的科技。
impax:另外一種機械緩震系統,依靠拱形結構在運動中的形變來吸收沖擊力。實際應用效果遠不如理論效果,緩震較差,硬。
i.p.s:jordan系列自主研發的最新科技,根據運動中足底受力點來安置不同密度的phylon柱來提供緩震,用於jordan鞋。
phylon:就是你看見的nike的鞋子的白色鞋底
單提馬:中路防守薄弱 可以起橫車在六路和四路加強中路防與攻 注意對手一般會從中路進攻 比如盤頭馬。 窩心炮:炮窩心不宜太久,如果出不去了會造成麻煩 一般是為了強行吃對方中路的兵或進五路兵。 巡河車:對掉兵卒,活馬路,並且保馬,要注意如果你是車 馬 兵這樣的位置,對方進炮拴住你車和馬 那就相當麻煩了,所以進巡河車一定注意對方的炮。 夾炮屏風:炮在士角的位置 然後上兩個正馬,一般走成士角炮 和 過宮炮 局,靈活運用炮,攻守兼備。但要注意對方會出車騷擾你的陣型 特別是沒有跟的馬。 仙人指路:第一步走三路或七路兵,應付對仙人指路有同樣進兵卒,有頑強兇狠的直接運炮打兵。所以要看對方怎麼走,這種開局比較考棋力。初學者一般不建議走。 飛相局:首著飛相,比較注重防守,可以走成很多布局。。
一般的分旱秧和水秧,這個前期秧苗耐旱點且工作簡單一些,但是浪費種子多一點秧苗沒有水秧苗好。至於很詳細的東西就不好說了。
動態布局,也就是可以根據業務的需求改變介面。實際上就是用程式碼寫出介面,程式碼量比較大。而且維護起來十分的繁瑣。特別是一些介面空間比較多的時候。靜態的布局,是通過xml來實現的,適用於頁面比較固定的情況。但是維護起來比較方便。
噴墨印表機優點:整機價格相對彩色鐳射機便宜,較低的一次性購買成本獲得彩色照片級輸出的效果,缺點:使用耗材為墨盒,成本較高,長時間不用容易堵頭;
鐳射印表機優點:耗材單張列印成本低,耗材為墨粉,長時間不用也不用擔心堵頭的問題,列印速度快,高階產品可以滿足高負荷企業級輸出以及圖文輸出,缺點:中低端彩激的彩色列印效果不如噴墨機,可使用的列印介質較少;
針式印表機優點:可以復寫列印(發票及多聯單據),可以超厚列印(存摺證書列印),耗材為色帶,耗材成本低,缺點:工作噪音大,體積不可能縮小,列印精度不如噴墨及鐳射機。
㈤ android中五種布局有什麼不同
五種布局方式,分別是:FrameLayout(框架布
局),LinearLayout
(線性布局),AbsoluteLayout(絕對布局),RelativeLayout(相對布局),TableLayout(表格布局)
一、FrameLayout
這個布局可以看成是牆腳堆東西,有一個四方的矩形的左上角牆腳,我們放了第一個東西,要再放一個,那就在放在原來放的位置的上面,這樣依次的放,會蓋住原來的東西。這個布局比較簡單,也只能放一點比較簡單的東西。
二、LinearLayout
線性布局,這個東西,從外框上可以理解為一個div,他首先是一個一個從上往下羅列在屏幕上。每一個LinearLayout裡面又可分為垂直布局
(android:orientation="vertical")和水平布局(android:orientation="horizontal"
)。當垂直布局時,每一行就只有一個元素,多個元素依次垂直往下;水平布局時,只有一行,每一個元素依次向右排列。
linearLayout中有一個重要的屬性 android:layout_weight="1",這個weight在垂直布局時,代錶行距;水平的時候代表列寬;weight值越大就越大。
三、AbsoluteLayout
絕對布局猶如div指定了absolute屬性,用X,Y坐標來指定元素的位置android:layout_x="20px"
android:layout_y="12px" 這種布局方式也比較簡單,但是在垂直隨便切換時,往往會出問題,而且多個元素的時候,計算比較麻煩。
四、RelativeLayout
相對布局可以理解為某一個元素為參照物,來定位的布局方式。主要屬性有:
相對於某一個元素
android:layout_below="@id/aaa" 該元素在 id為aaa的下面
android:layout_toLeftOf="@id/bbb" 改元素的左邊是bbb
相對於父元素的地方
android:layout_alignParentLeft="true" 在父元素左對齊
android:layout_alignParentRight="true" 在父元素右對齊
還可以指定邊距等,具體詳見API
五。TableLayout
表格布局類似Html裡面的Table。每一個TableLayout裡面有表格行TableRow,TableRow裡面可以具體定義每一個元素,設定他的對齊方式 android:gravity="" 。
每一個布局都有自己適合的方式,另外,這五個布局元素可以相互嵌套應用,做出美觀的界面。-----------------cvsyun。
㈥ android 在一個布局中分成兩塊 上面是一個布局 下面是一個列表 怎麼隱藏上面的布局 正常
setVisibility(View.GONE)就是完全隱藏,INVIsiable只是在原來的位置不畫了,GONE是類似remove
㈦ 如何在android中添加上上下左右鍵
Android虛擬鍵盤上下左右鍵按下和彈起的響應事件,代碼非常簡單,列舉如下:
首先,新建工程
在mian.xml布局中添加一個TextView控制項(主要用來顯示按鍵反饋)
然後,在java文件中寫代碼,參看下面代碼:
public class HelloAndroidActivity extends Activity {
private TextView mTextView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//獲取布局中的TextView控制項
mTextView = (TextView) findViewById(R.id.textView1);
}
// 按鍵按下,所觸發的事件
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_CENTER:
display("中鍵被按下");
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
display("下鍵被按下");
break;
case KeyEvent.KEYCODE_DPAD_LEFT:
display("冊基左鍵被按下");
break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
display("右鍵被按下");
break;
case KeyEvent.KEYCODE_DPAD_UP:
display("上鍵被按下");
break;
}
return super.onKeyDown(keyCode, event);
}
// 按鍵彈起,所觸發的事件
public boolean onKeyUp(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_CENTER:
display("中鍵被彈起");
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
display("下鍵被彈仔枯起");
break;
case KeyEvent.KEYCODE_DPAD_LEFT:
display("左鍵被彈起");
break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
display("右鍵被彈起");
break;
case KeyEvent.KEYCODE_DPAD_UP:
display("上鍵被彈起");
break;
}
return super.onKeyUp(keyCode, event);
}
// 用來顯示文本框內容
public void display(String str) {
mTextView.setText(str);
}
}
運行工程即可看到效果州戚謹
㈧ 請介紹下Android中常用的五種布局,分別的布局方式。謝謝!急
LinearLayout,線性布局
RelativeLayout,相對布局
AbsoluteLayout,絕對布局
FrameLayout,幀布局
TableLayout,表格布局
BorderLayout,
BoxLayout,
CardLayout,
DefaultMenuLayout,
FlowLayout,
GridBagLayout,
GridLayout,
GroupLayout
swing里常用的也有這些,至於每個具體的功能你自己查一下API就可以了。
1、Java初步
Java是由sun公司開發的一種新型的面向物件的程式設計語言,主要用於web頁面的設計。
Java語言的發展頗具傳奇性,它與Inter的的迅猛發展是分不開的。由於其發展迅速,有人將它比喻為Inter上的世界語。前面講到在Inter上Web頁面的設計採用的是HTML語言,使用者藉助於Web瀏覽器(如Netscape,HotJava,IE等),可以訪問到遠端web伺服器上靜態的、具有超連結的Web頁面。Java語言的出現改變了 Web頁面的這種傳統的靜態模式,通過在Web頁面中附加一些利用Java編寫的App1et(稱為小程式),可飢型以使Web頁面更具多樣蠢空性和變化性,這樣使用者就能夠訪問到動態的,具有互動功能的web頁面。
例如一些小的動畫,實時更新的圖表、聲音等。總之,Web頁面的設計主要採用HTML語言,利用Java則使其錦上添花。
Sun公司於1995年5月正式推出Java語言,由於其簡單、高效、可移植性強等特點,一經推出,很快引起廣大使用者和眾多廠商的普遍關注,特別是Sum公司將其定位於Inter的應用開發上,使得Java得以迅速發展。在同期推出的還有被稱為HotJava(熱咖啡)的瀏覽器,Hotjava是一個完全由Java語言編寫,基於Java典型應用的web瀏覽器,並且第一個支援Java Applet。HotJava充分展示了Java在全球Inter網上的強大威力,同時也為Java語言程式設計提供了一個理想的執行平台。
Java語言推出後,各大軟體廠商相繼宣布支援Java。首先是Netscape公司在其Web瀏覽器(Netscape Navigator2.0)中支援Java,不久,sun,SGI和Macromedia三家公司制定了基於Java的開放式多媒體標准。後來許多公司,如IBM,Microsoft,Orac1e等,都宣布支援Java。Netscape公司進一步與sun公司合作,推出了類似於Java的JavaScript語言。目前,Sun公司已成立了專門的Javasoft分部,負責管理Java語言的開發、維護工作(可從Http:Javasoft,站點了解詳細資訊)。
對於Java這一名字,較為流行的說法是它來源於印度尼西亞的一個重要島嶼,該島嶼的中文譯名為"爪哇",島上盛產咖啡,於是sun公司的開發人員將這種新語言起名為Java,寓意是使其與熱氣騰騰的咖啡聯絡起來,將它奉獻給全球的計算機使用者。
2、Java語言的特點
Java語言的流行除了因為它能夠編制嵌入HTML檔案中的Applet外,還在於Java語言本身的面向物件、簡單、平台無關性、安全性、多執行緒等特點。Java語言的結構與編寫方式,與c++語言類似,因此學習Java語言,不僅要了解Java語言獨有的程式設計特點,同時還要有程式設計基礎和面向物件的概念。 <BR>Java語言的主要特點如下:
(1)簡單、高效
Java語言與C++類似,如果使用者了解C++和面向物件的概念,就可以很快編寫出Java程式;此外,Java又不同於諸如C++語言提供的各種各樣的方法,它只提供了基本的方法,這樣就減少了程式設計的復雜性,例如去掉了標頭檔案、指標變數、結構、運運算元過載、多重繼承等復雜特性。Java語言雖然簡單,卻很高效,它可以用面向物件的方法來描述使用者的每一個動作。
(2)面向物件
Java語言是一種新的面向物件的程式設計語言,它除了幾種基本的資料型別外,大都是類似c++中的物件和方法,程式程式碼大多體現了類機制,以類的形式帶肢瞎組織,由類來定義物件的各種行為。Java同樣支援類繼承,這樣也減少了程式設計的復雜性。
(3)平台無關性 Java語言經編譯後生成與計算機硬體結構無關的位元組程式碼(Bytecode),這些位元組程式碼被定義為不依賴任何硬體平台和作業系統。當Java程式在執行時,需要由一個解釋程式對生成的位元組程式碼解釋執行。這體現了Java語言的與平台無關性,使得Java程式可以在任何平台上執行,如MS-DOS,Windows,Unix等,因此具有很強的移植性。
(4)互動式特性
Java是面向物件的網路程式語言,由於它支援TCP/IP協議,使得使用者可以通過瀏覽器訪問到Inter上的各種動態物件。並且在網路上使用者可以互動式地進行各種動作,而多執行緒技術的引入使得這種互動式操作更為容易。
(5)多執行緒機制
Java語言支援多執行緒機制,多執行緒機制使得Java程式能夠並行處理多項任務。Java程式可以設計成具有多個執行緒,例如讓一個執行緒負責資料的檢索、查尋,另一個執行緒與使用者進行互動,這樣,兩個執行緒得以並行執行。多執行緒機制可以很容易地實現網路上的互動式操作。
(6)動態的記憶體管理機制
Java語言採用了自動垃圾回收機制進行記憶體的管理。在C++語言中,程式設計師在編寫程式時要仔細地處理記憶體的使用,例如當某個記憶體快使用完畢時,要及時釋放,以供其它程式使用,一旦記憶體管理不當,就有可能造成記憶體空間浪費或程式執行故障。 <BR>在Java系統中包括了一個自動垃圾回收程式,它可以自動、安全地回收不再使用的記憶體塊,這樣,程式設計師在程式設計時就無需擔心記憶體的管理問題,從而使Java程式的編寫變得簡單,同時也減少了記憶體管理方面出錯的可能性。
(7)安全性
在類似Inter的這種分散式網路環境中,安全性是個不容忽視的問題。Java語言在安全性方面引入了實時記憶體分配及布局來防止程式設計師直接修改實體記憶體布局;通過位元組程式碼驗證器對位元組程式碼的檢驗,以防止網路病毒及其它非法程式碼侵入。此外,Java語言還採用了許多面向物件的異常處理機制,負責對一些異常事件進行處理,如記憶體空間不夠,程式異常中止等的處理。 <BR>以上介紹了Java語言的一些主要特點,除此之外它還具有動態性、類庫豐富、高效能等特點,這些都使得Java語言在各個方面得以成熟和完善,成為大眾日益青睞的程式設計語言之一。
3、Java應用程式和Java AppletJava語言是一種面向物件的程式設計語言,利用Java語言,能夠編寫出兩大類程式:Java應用程式(Application)和Java App1et(小程式):
Java應用程式是由Java語言編寫,在經過編譯和解釋後,可以獨立執行在MS-DOS,UNIX等操作平台上。Java應用程式一般以命令列方式執行。
Java Applet是不能獨立執行的,App1et必須嵌入到HTML檔案中,並且需要啟動瀏覽器才能執行。這樣,指定的Applet會自動下載到使用者的瀏覽器中執行,從而產生一些特殊的頁面效果,如動畫、聲音、圖表、影象等。通過在Web頁面中嵌入Applet,可以使Web頁面與使用者之間進行動態互動,例如接收使用者的輸入,然後根據使用者的需要產生不同的響應。
就Java Applet而言,它是嵌入到HTML檔案中的,HTML檔案呈現的內容大多為文字、圖片、表格、聲音等,但這些內容一般都是靜態的、二維的。但當HTML檔案中嵌有 Applet後,整個頁面會呈現出多樣性和變化性,例如互動功能、圖表等。在運用方面Java語言和HTML語言的區別在於:
(1)HTML語言屬於一種簡單的標記語言,一般使用者均可在數小時內學會如何編寫HTML檔案。而Java語言的結構和編寫方法更類似於c++,所以學習Java語言要有程式設計的基礎和面向物件的概念。
(2)Web頁面的編寫主要採用HTML語言,但若想使頁面更具變化性、多樣性、互動性,可採用Java語言來達到這種效果,起到錦上添花的作用。
4、在HTML檔案中嵌入Applet</FONT> <BR>Applet是Java在Inter的中的一個重要應用,同時它的出現也促使了Java成為日益流行的程式設計語言。Applet是指由Java語言編寫的,被嵌入到Web頁面中,並通過瀏覽器執行以產生特殊頁面效果的小程式。嵌入了Applet的Web頁面看上去會更加豐富多彩,具有動態互動能力。
在Inter上擁有大量的App1et,這些Applet大都是由Sun等公司的Java開發人員設計出來的,對於廣大使用者,特別是初學者,可以將這些App1et下載到自己的計算機中,井通過將這些下載下來的App1et嵌入到自己的Web頁面中來,獲得自己具有相同效果的Web頁面,以豐富自己的頁面內容。
Android的常見布局方法:線性布局、表格布局、相對布局、幀布局和巢狀布局;
好的,糾結了幾天了,換了各種版本的eclipse,那什麼版本以下預設的是線性布局的呢 檢視原帖>>
線性布局LinearLayout 表格布局TableLayout 幀布局Framelayout 相對布局RelativeLayout 絕對布局AbsoluteLayout
android4.0版本後新增的GridLayout
你在網路搜索 「css+div的布局方式,比table的布局方式」 就會有很多關於這個問題答案,你可以看看,雖然都有優缺點,但是建議還是改用div+css吧,table已經過時了
:codesky./article/201008/139693.
希望可以幫到你
KIKC自2013年創立以來,在幾年內已經擴張600多個店鋪,預計將在2018年實現1000個店鋪的全面布局,其發展速度堪稱業界奇跡。
借用網路一句話:響應式布局是Ethan Marcotte在2010年5月份提出的一個概念,簡而言之,就是一個網站能夠相容多個終端——而不是為每個終端做一個特定的版本。這個概念是為解決移動網際網路瀏覽而誕生的。
響應式布局就是可以,適應多種裝置的網頁,比如電腦端和移動端 可以共用同一套CSS。不需要為單獨的裝置而開發相應程式
浮動布局,定位布局以及響應式布局,這三種布局是最基本最常見的,此外比較特殊的是彈性布局,彈性布局相對使用較少,需要根據專案的具體情況而定。
在網站開發當中,通常是需要結合多種布局去實現網頁布局的。如果是在學習網頁布局的相關知識,可以弄本 HTML5布局之路 ,來輔助自己的學習
㈨ android中常見的五種布局有什麼特點
1,FrameLayout,特點:所有的View都會放在左上角,並且後添加進去的View會覆蓋之前放進去的View。
2,LinearLayout,特點:在水平或者垂直方向上依次按照順序來排列子元素,控制項的排列順序遵循其在布局文件中被寫出的先後順序。
3,RelativeLayout,特點:以某一個子元素為參照物,其餘子元素均按照其相對位置來完成布局。
4,TableLayout,特點:每個TableLayout都是由一個或多個TableRow組成的,一個TableRow就代表TableLayout的一行。
5,AbsoluteLayout,表格布局類似Html裡面的Table。每一個TableLayout裡面有表格行TableRow,TableRow裡面可以具體定義每一個元素,設定他的對齊方式 android:gravity="" 。
(9)android布局上中下擴展閱讀:
開放性:
在優勢方面,Android平台首先就是其開放性,開發的平台允許任何移動終端廠商加入到Android聯盟中來。顯著的開放性可以使其擁有更多的開發者,隨著用戶和應用的日益豐富,一個嶄新的平台也將很快走向成熟。
開放性對於Android的發展而言,有利於積累人氣,這里的人氣包括消費者和廠商,而對於消費者來講,最大的受益正是豐富的軟體資源。開放的平台也會帶來更大競爭,如此一來,消費者將可以用更低的價位購得心儀的手機。
豐富的硬體:
這一點還是與Android平台的開放性相關,由於Android的開放性,眾多的廠商會推出千奇百怪,功能特色各具的多種產品。功能上的差異和特色,卻不會影響到數據同步、甚至軟體的兼容,如同從諾基亞Symbian風格手機一下改用蘋果iPhone,同時還可將Symbian中優秀的軟體帶到iPhone上使用、聯系人等資料更是可以方便地轉移。
㈩ android整體布局為線性布局,垂直分布,其中分為上下兩部分,上方為相對布
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="攻擊"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:text="左勾拳"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:text="右勾拳"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
android:text="逃跑"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:id="@+id/centerBtn"
android:text="大絕招"/>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"