零基础学Android之常用控件
常用控件
上次我們講了布局:線性布局、表格布局、幀布局和相對布局,這個布局,它是在整個移動端設計內容的一個框架的方式,以什么方式來設計界面。最終在界面里面,放置的是控件,所謂控件,就是程序員可以控制的組件,將來用戶可以和程序進行交互的組件。
1.文本控件
TextView:主要用來向用戶顯示內容。相當于一個標簽,只顯示
EditText:可以用于編輯內容。 相當于一個文本框,可以編輯
控件最重要的是了解它的屬性,了解了屬性,在了解之后會更加簡單。
省略:anroid:打頭
TextView的屬性 Java代碼
text 設置TextView的內容 setText(文本)
textColor 設置文本的顏色 setTextColor(顏色)
textSize 設置文本的大小; setTextSize(大小)
gravity 定義TextView在x軸和y軸方向上的顯示方式
hint: 提示信息 setHint(int);
EditText屬性:相當于文本框
lines: 設置行數 setLines(int)
singleLine 單行 setSingleLine(boolean)
password 設置是否是密碼 setTransformationMethod(參數)
phoneNumber 設置內容只能是電話號碼 setInputType(InputType類型)
事件監聽
setOnKeyListener 對鍵盤事件進行監聽
在前面設計布局的時候,在下面這個文件寫代碼;
active_main.xml
<!--輸入的文本框,和顯示View同步顯示一下;EditText--><![CDATA[TextView上;最重要的是理解原理;作業:郵箱 手機 密碼等等;剛才的問題是:高度直接擴到整個手機屏幕了; -->]]><EditTextandroid:id="@+id/uname"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="請輸入用戶名" /><TextViewandroid:layout_width="match_parent"android:layout_height="50dp"android:id="@+id/unameInfo"android:background="@color/purple"android:text="測試"android:textSize="20dp"/> public class MainActivity extends AppCompatActivity {//先定義兩個變量;如果報紅,按住Alt+Enter,導入相關的類;EditText uname;TextView unameInfo;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main); //--------------------------------------------//如何寫后臺代碼;通過后臺代碼來操作前面的控件//是不是需要來獲取這個控件呢???uname=(EditText) findViewById(R.id.uname);unameInfo=(TextView) findViewById(R.id.unameInfo);//以后控件的方式都是這樣的;//接下來操作之,這個是一個監聽方式,需要添加監聽器//紅色波浪線的問題,這個是使用匿名類的方式來導入其方法;仍然是Alt+Enter,實現抽象方法uname.setOnKeyListener(new View.OnKeyListener(){@Overridepublic boolean onKey(View view, int i, KeyEvent keyEvent) {//接受這個輸入;String str=uname.getText().toString();System.out.println(str+"-----");unameInfo.setText(str);return false;}});} }2.按鈕控件
按鈕控件就是我們平時看到的Button按鈕和ImageButton控件,用的比較多,一般都是用來操縱按鈕來實現相應的命令,比如說在手機上很多的查找、登錄、注冊,各種點擊游戲等。
按鈕控件名:是啥?
Button
ImageButton:
這個和Button的區別在于它是沒有文本的,只有啥?圖片,所以需要制定它的圖片路徑。
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"> <!-- 按鈕組件,定義2個按鈕即可,不用太多。--><Buttonandroid:layout_width="100dp"android:layout_height="wrap_content"android:id="@+id/btnLogin"android:text="登錄"/><ImageButtonandroid:layout_width="100dp"android:layout_height="wrap_content"android:src="@mipmap/hjamera"android:id="@+id/btn222"/> <!-- 增加一個信息提示的控件--><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:id="@+id/msg"android:textSize="20dp"/> </LinearLayout>后臺代碼
package com.aaa.zyg001; // 這個是包的定義 //import導入相關的類; import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle; import android.view.KeyEvent; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.ImageButton; import android.widget.TextView;import org.w3c.dom.Text;public class MainActivity extends AppCompatActivity {//1.聲明變量,表示2個按鈕對象;Button btn1;ImageButton btn2;//信息提示的變量;TextView msg;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main); //------------------------------------------------------------------btn1=(Button) findViewById(R.id.btnLogin);btn2=(ImageButton)findViewById(R.id.btn222);//同樣需要增加提示信息的對象;msg=(TextView)findViewById(R.id.msg);//大家觀察一下,是不是和剛才 演示的文本框和密碼框方式一樣????//接下來設置兩個按鈕的事件來測試一下btn1.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View view) {//設置內容提示到信息提示變量里面,又和剛才我們講的一樣了.msg.setText("看看我的反映哦!!!");}});} }作業:做下測試或擴展一下即可。
總結
以上是生活随笔為你收集整理的零基础学Android之常用控件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 零基础学前端开发之CSS基础
- 下一篇: Android从入门到进阶之高级控件