1. 程式人生 > >android:layout_width與android:width的區別

android:layout_width與android:width的區別

最近正在自學安卓開發,先是學習介面程式設計,在學習當中看到書上TextView控制元件有android:layout_width屬性與android:width屬性,一下搞不明白,所以寫了個Demo測試,以下是xml檔案
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">
    <TextView
     android:id="@+id/view1"
     android:layout_width="40dp"
     android:layout_height="wrap_content"
     android:background="#0f0"
     android:width="300dp"
     android:text="helloworld"
        />


    <TextView
    android:id="@+id/view2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#f00"
    android:width="300dp"
    android:text="helloworld"
    />

    <TextView
        android:id="@+id/view3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#00f"
        android:width="30dp"
        android:text="helloworld"
        />


    <TextView
        android:id="@+id/view4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="#90f"
        android:width="30dp"
        android:text="helloworld"
        />

    <TextView
        android:id="@+id/view5"
        android:layout_width="150dp"
        android:layout_height="wrap_content"
        android:background="#28f"
        android:width="30dp"
        android:text="helloworld"
        />
</LinearLayout>
執行結果如下所示: 根據以上執行結果得出以下結論:
1.layout_width主要是相對父控制元件而言設定的寬度,可以為wrap_content,fill_parent以及具體的寬度。而width是對於自身而言設定的寬度,一般賦值都是具體的寬度。
2.當layout_width為wrap_content時,控制元件真實的寬度由width決定;當layout_width為fill_parent或具體某個寬度時,控制元件真實寬度由layout_width決定 本人是初學者,如有錯誤,敬請指正,謝謝!

相關推薦

android:layout_widthandroid:width區別

最近正在自學安卓開發,先是學習介面程式設計,在學習當中看到書上TextView控制元件有android:layout_width屬性與android:width屬性,一下搞不明白,所以寫了個Demo測試,以下是xml檔案 <LinearLayout xmlns

android onCreateonCreateView的區別

onCreate是指建立該fragment,類似於Activity.onCreate,你可以在其中初始化除了view之外的東西。 onCreateView是建立該fragment對應的檢視,你必須在這裡建立自己的檢視並返回給呼叫者。 例如 return inflater.inflate(

Android TextureView SurfaceView用法區別

SurfaceView和TextureView均繼承於android.view.View,與其它View不同的是,兩者都能在獨立的執行緒中繪製和渲染,在專用的GPU執行緒中大大提高渲染的效能。 一、SurfaceView專門提供了嵌入檢視層級的繪製介面,開發者可以控制該介面

Android程序執行緒區別

 程序,常被定義為程式的執行,可以把一個程序看成一個獨立的程式,在記憶體中有其完備的資料空間和程式碼空間。一個程序所擁有的資料和變數只屬於他自己。          執行緒,某一程序中一路單獨執行的程式。也就是執行緒存在於程序之中,一個程序由一個或多個執行緒構成,各執行

Android中的android:layout_widthandroid:width

android:width 其實是定義控制元件上面的文字(TextView) 的寬度,當然這個寬度也是和 android:layout_width 配合起來作用的,如果 android:layout_width="fill_parent" 的話,那麼設定 android:

Android MarginLeftMarginStart的區別

在寫layout佈局的時候,我們會發現有這樣幾個比較相似的屬性:MarginStart   MarginLeft MarginEnd    MarginRight        這些屬性的區別

android:layout_marginLefandroid:paddingLeft的區別

android:layout_marginLeft指該控制元件距離邊父控制元件的邊距, android:paddingLeft指該控制元件內部內容,如文字距離該控制元件的邊距。 如: 當按鈕分別設定以上兩個屬性時,得到的效果是不一樣的。 android:pad

android:padding android:margin的差別

track line trac andro 邊框 pop col ack ria android:padding Padding 為內邊框,指該控件內部內容,如文本/圖片距離該控件的邊距 android:margin Margin 為外邊框,指該控件距離邊

個人對學習Android應用Android系統的心得

     我們很多人對Android理解只限於Android應用對andriod系統很少去了解,所以對Android應用的學習每個人都有不同的看法吧!對我個人而言想入門Android開發這行業必須先要學會Java,不要求要對Java有多深的瞭解,只要對Java熟悉一定程度就

Android StudioAndroid SDK 線上更新的解決方案(1.3.2)

1、Android Studio更新 問題:在Android Studio中,點選help-Check for Update,會出現如下錯誤: 解決方案:開啟Android Studio的安裝目錄,

Android N Android M InCallUI程式碼對比(基於CM)

今天是2016.11.30,google已經開始推送android 7.1了。我們都知道其實7.0早就放出來了,那為什麼我現在才寫7.1的原始碼閱讀分析呢?因為等了高通兩個月N的程式碼,他們遲遲不給我們。那我只有看CM的了。下面內容以CM 14.1和CM 13.0(對應and

QSTile 的一點變化 Android O Android N 相比

起因 Android O 點選QSPanel 中的資料圖示沒法展開詳情檢視資料使用量,而在Android N 上可以的,所以想調檢視看O 上有什麼不同。 注:本文不涉及任何流程分析,只是單純的想找回個功能,並藉此描述一下O 和N 在tile 上的一點點不同。

在PC上安裝Android SDKAndroid模擬器

最近重新安裝了一下Android環境,發現現在已經在Google官網找不到獨立的Android SDK可以下載了,而網上的其它教程比較舊,還是描述怎麼SDK Manager裡設定使用國內的映象站點以下載需要的SDK,然而如果因為wall, Android Studio未能在安裝過程中下載安裝好SDK Mana

Android開發——diglog canceldismiss方法區別

get() 方法 null ref 變量 width align eight ora AlertDialog dismiss 和 cancel方法的區別 AlertDialog使用很方便,但是有一個問題就是:dismiss方法和cancel方法

Android原始碼編譯jar包BUILD_JAVA_LIBRARY BUILD_STATIC_JAVA_LIBRARY的區別

 Android原始碼編譯jar包BUILD_JAVA_LIBRARY 與BUILD_STATIC_JAVA_LIBRARY的區別(一) http://www.cnblogs.com/zhhd/p/5392913.html 上面是參考文章的連結,下面是我的編譯指令碼(An

MVPMVC的區別 in Android

轉自:http://blog.csdn.net/lmj623565791/article/details/46596109 一、概述 對於MVP(Model View Presenter),大多數人都能說出一二:“MVC的演化版本”,“讓Model和View完全解耦”等等。本篇博文僅是

轉:Android中IntentServiceService的區別

https://blog.csdn.net/matrix_xu/article/details/7974393 Android中的Service是用於後臺服務的,當應用程式被掛到後臺的時候,問了保證應用某些元件仍然可以工作而引入了Service這個概念,那麼這裡面要強調的是Service不是獨立

Android MVPMVC區別

1、MVP與MVC的區別 Activity職責不同,Activity在MVP中是View層,在MVC中是Controller層,這是MVC和MVP很主要的一個區別,可以說Android從MVC轉向MVP開發也主要是優化Activity的程式碼,避免Activity的程式碼臃腫龐大。

android dp sp px的區別聯絡

畫素密度? 螢幕的畫素密度在不同的手機上是不盡相同的。所以需要建立一個獨立於畫素系統的單位來適應不同平臺的手機。 如何計算畫素密度? pixel density = width(or height) in pixels / width(or height)

Android applicationId包名的區別

應用ID與包名區別 每個Android應用都有一個唯一的應用ID.在Android裝置和市場上,這個ID是你應用的唯一標識.若想在市場上更新應用,新應用的ID必須和原來apk的應用ID一致.所以一旦釋出了應用,就不能再改變應用ID. 在Eclipse中沒有applic