Android Studio - Layout 極簡

工具的使用可以看 這篇贮尖,更新的可能和原來相比有點點變化个扰,問題不大

這篇主要介紹一下Android上簡單的控件布局矾削。用了很多Android Developers的文檔肩刃,為了方便貼的中文。不過建議看的時候去看看原版速缨,中文名詞翻譯有的就很難受锌妻,這里我把名詞基本都換成英文了

Layouts

首先(不怎么準確的)說一下名字里帶view和帶layout的區(qū)別,簡單來說view用來實際呈現(xiàn)內(nèi)容旬牲,layout決定他們在界面上怎么呈現(xiàn)出來仿粹,包括位置、動畫等邏輯原茅。下面是官方介紹

Layout可定義應用中的界面結構(例如 Activity 的界面結構)吭历。布局中的所有元素均使用 ViewViewGroup 對象的層次結構進行構建。View 通常繪制用戶可查看并進行交互的內(nèi)容擂橘。而ViewGroup 是不可見容器container晌区,用于定義 View 和其他 ViewGroup 對象的布局結構,如圖

viewgroup

View對象通常稱為widgets通贞,可以是眾多子類之一朗若,例如 ButtonTextViewViewGroup 對象通常稱為layouts昌罩,可以是提供其他布局結構的眾多類型之一哭懈,例如 LinearLayoutConstraintLayout

有兩種聲明布局的方法

  • XML布局文件
    可將應用外觀代碼與控制其行為的代碼分開茎用。使用 XML 文件還有助于為不同屏幕尺寸和屏幕方向提供不同布局
  • 運行時實例化
    代碼中實現(xiàn)并調(diào)整屬性

XML

XML即ExtentsibleMarkup Language(可擴展標記語言) 遣总,是一種跨平臺的睬罗,與軟、硬件無關的旭斥,處理與傳輸信息的工具容达。嚴格區(qū)分大小寫,具有嚴格樹狀結構(對比看起來很像但實際本質不同的html)琉预。

每個layout文件都必須只包含一個根元素董饰,并且該元素必須是View對象或 ViewGroup 對象

保存在res/layout/目錄

編譯應用時,系統(tǒng)會將每個 XML 布局文件編譯成 View 資源圆米。在 Activity.onCreate() 回調(diào)實現(xiàn)內(nèi)加載應用代碼中的布局資源卒暂,通過調(diào)用 setContentView(),并以 R.layout.*layout_file_name* 形式向應用代碼傳遞布局資源的引用娄帖。啟動 Activity 時也祠,Android 框架會調(diào)用 Activity 中的 onCreate() 回調(diào)方法

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_layout);
}

Attributes

  • id
  • layout_somthing
  • ...

常見Layout & View

  • LinearLayout
  • RelativeLayout
  • ConstraintLayout
  • 使用Adapter的布局
    • ListView
    • RecyclerView
    • GridView
  • TextView
  • ImageView
  • Button
  • CardView
  • 進階:自定義
  • ...

寫個Demo?

稍微進階:使用intent和onClickListener實現(xiàn)點擊Button跳轉功能

Button button = (Button) findViewById(R.id.button_send);
button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        Intent i = new Intent(FirstActivity.this, SecondAcitivity.class);
        startActivity(i);
    }
});

喜聞樂見的作業(yè)環(huán)節(jié)

極其簡單的作業(yè):賈寶玉的個人主頁

InitActivity里一個簡單的你好按鈕近速,點擊跳轉到MineActivity展示賈寶玉的個人信息诈嘿,包括頭像、名字削葱、個人介紹奖亚,以及并排的三個按鈕,點擊后分別Toast隨便一句話析砸。歡迎加入更多操作昔字,想加多少加多少


嘮叨幾句,剛開始不熟悉可以拖控件放上去首繁,但是最好不要這么搞…一是看起來不怎么優(yōu)雅作郭,二是容易造成硬核代碼,奇怪margin之類的

說起來硬核代碼弦疮,xml里寫硬核代碼看著實在是太氣人了orz十分不可取夹攒。就比如為了居中手寫margin、相對位置關系混亂一看就是全程拖放控件胁塞、命名不規(guī)范語法錯誤不修正咏尝、或者縮進混亂一個control+alt+L都舍不得按...預覽的時候看不太出來,表面光鮮亮麗風平浪靜啸罢,看代碼能把你氣的吐血()就十分不可取编检,一定要注意這些簡單的細節(jié)。交作業(yè)的時候有這類問題我會私戳提醒的哦(兇(別害怕emm(不對伺糠,要害怕蒙谓。兇斥季。硬核代碼誰愿意看啊 誰愿意看誰看反正我不看 =n=

也別太靠預覽定布局训桶,因為需要適配的屏幕具體數(shù)據(jù)是動態(tài)的累驮,寫布局看起來簡單但是邏輯也需要清晰魯棒。

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末舵揭,一起剝皮案震驚了整個濱河市谤专,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌午绳,老刑警劉巖置侍,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異拦焚,居然都是意外死亡蜡坊,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進店門赎败,熙熙樓的掌柜王于貴愁眉苦臉地迎上來秕衙,“玉大人,你說我怎么就攤上這事僵刮【萃” “怎么了?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵搞糕,是天一觀的道長勇吊。 經(jīng)常有香客問我,道長窍仰,這世上最難降的妖魔是什么汉规? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮辈赋,結果婚禮上鲫忍,老公的妹妹穿的比我還像新娘。我一直安慰自己钥屈,他們只是感情好悟民,可當我...
    茶點故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著篷就,像睡著了一般射亏。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上竭业,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天智润,我揣著相機與錄音,去河邊找鬼未辆。 笑死窟绷,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的咐柜。 我是一名探鬼主播兼蜈,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼攘残,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了为狸?” 一聲冷哼從身側響起歼郭,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎辐棒,沒想到半個月后病曾,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡漾根,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年泰涂,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片辐怕。...
    茶點故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡负敏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出秘蛇,到底是詐尸還是另有隱情其做,我是刑警寧澤,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布赁还,位于F島的核電站妖泄,受9級特大地震影響,放射性物質發(fā)生泄漏艘策。R本人自食惡果不足惜蹈胡,卻給世界環(huán)境...
    茶點故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望朋蔫。 院中可真熱鬧罚渐,春花似錦、人聲如沸驯妄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽青扔。三九已至源织,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間微猖,已是汗流浹背谈息。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留凛剥,地道東北人侠仇。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像犁珠,于是被迫代替她去往敵國和親逻炊。 傳聞我的和親對象是個殘疾皇子踢代,可洞房花燭夜當晚...
    茶點故事閱讀 44,781評論 2 354

推薦閱讀更多精彩內(nèi)容