Android中的控制項的使用方式和iOS中控制項的使用方式基本相同,都是事件驅動。給控制項添加事件也有介面回調和委託代理的方式。今天這篇博客就總結一下Android中常用的基本控制項以及布局方式。說到布局方式Android和iOS還是區別挺大的,在iOS中有Frame絕對布局和AutoLayout相對布局。而在Android中的布局方式就比較豐富了,今天博客中會介紹四種常用的布局方式。先總結一下控制項,然後再搞一搞基本方式,開發環境還是用的Mac下的Android Studio。開始今天的正題, 雖然Android的控制項和布局方式都可以拖拽實現,今天為了更詳細的了解控制項和布局,我們就用純代碼的形式來進行實現和介紹。
一、常用基本控制項
1.TextView
看到Android中的TextView, 我不禁的想到了iOS開發中的UILabel。從字面意思上看,TextView就是文本視圖,只是用來顯示文字的。在iOS中就叫做標籤,即為UILabel。要想在Activity中顯示TextView, 我們需要在相應的布局文件,也就是Activity對應的layout.xml文件去添加相應的控制項標籤。這些xml標籤可以確定控制項的位置,大小,顏色等屬性。下方是在Activity中顯示一個TextView。布局代碼如下:
<TextView
android:id="@+id/name_text_view"
android:layout_width_="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="30sp"
android:textColor="#be0e0a"
android:text="My name is ZeluLi"/>
標籤<TextView/>代表著我們要在Activity中添加一個個TextView, 標籤中可以設置一些屬性。
- android:id屬性代表著TextView的Id,也就是TextView的唯一標示,在java代碼中我們可以通過findViewById()方法來通過Id獲取控制項。上述控制項的唯一id為name_text_view。
- android:layout_width屬性代表著控制項的寬度,該屬性的值是match_parent, 表示該控制項的寬度與父視圖的寬度相同。
- android:layout_height屬性代表著控制項的高度,該屬性的值是wrap_content,表示控制項的高度根據內容的高度進行改變。
- .android:gravity屬性代表著TextView中文字對齊方式,有多種方式,我們在此選的是center,居中顯示。
- .android:textSize屬性代表著TextView中文字的型號,也就是文字的大小。
- android:textColor屬性設置的是TextView中文字的顏色,屬性值是16進位的色值。
- android:text屬性就是用來設置TextView顯示的值的。
我們如何在Java類,也就是Activity中獲取上述控制項呢,下方的代碼就是使用findViewById()方法通過id獲取上述控制項,並獲取TextView中的值以及設置TextView中的值。具體代碼如下。
TextView myTextView = (TextView) findViewById(R.id.name_text_view);
String myText = myTextView.getText().toString();
myTextView.setText(myText+" Add");
經過上面的屬性的設置,運行工程,你會在Activity中看到如下效果: