android线性布局的实例
生活随笔
收集整理的這篇文章主要介紹了
android线性布局的实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
先把框架弄好(打開studio)
實現效果圖:(1)能輸入 (2)能做到基本判斷 (3)能夠響應鼠標點擊事件
(1)新建一個用戶登錄的界面(將前臺展示出來)
(2)在MainActivity.java文件添加業務邏輯(我們所要實現的功能)
(1)
<?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"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="請輸入用戶名:" /><!--輸入框控件:可以讓用戶輸入自己的內容android:text="admin":設置輸入框控件的默認值@:表示訪問R類+:添加id:R類中的靜態內部類editText_userName:R類中id靜態內部類的靜態常量,對應的值為:0x7f0c0050android:id="@+id/editText_userName":在R類中添加一個靜態內部類id(如果沒有的話)的靜態常量editText_userName相當于說:0x7f0c0050就代表當前EditText控件對象--><EditTextandroid:id="@+id/editText_userName"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="請輸入用戶名"android:text="admin" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="請輸入密 碼:" /><!--如何讓輸入框變成密碼框:A: android:password="true"B:android:inputType="textPassword":密碼可以是任意文本android:inputType="numberPassword":密碼只能是數字android:hint="請輸入密碼":當輸入框中內容為空時顯示的提示文字,用戶一旦輸入字符則提示信息自動消失,刪除最后一個顯示字符后提示信息自動顯示--><EditTextandroid:id="@+id/editText_password"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="請輸入密碼"android:inputType="textPassword"android:text="123" /></LinearLayout><!--android:gravity="center":指定當前控件中子元素的對齊方式--><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:orientation="horizontal"><!--Button:按鈕,可以響應用戶的操作,比如點擊等android:onClick="login":指定當用戶點擊當前按鈕時執行的函數名,函數的簽名格式為:public void 函數名(View view){},如:public void login(View view){}--><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:onClick="login"android:text="登錄" /><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:onClick="reset"android:text="重置" /></LinearLayout> </LinearLayout>(2)
package com.example.lenovo.linearlayout_demo;import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.text.TextUtils; import android.view.View; import android.widget.EditText; import android.widget.Toast;public class MainActivity extends AppCompatActivity {private EditText editText_userName;private EditText editText_password;/*** 用來做初始化工作,如:查找控件* @param savedInstanceState*/@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//setContentView(R.layout.activity_linelayout_01);setContentView(R.layout.linearlayout_login);this.initView();}/*** 查找控件*/private void initView() {//根據控件的id查找控件對象editText_userName = (EditText) this.findViewById(R.id.editText_userName);editText_password= (EditText) this.findViewById(R.id.editText_password);}/*** 當用戶點擊登錄按鈕時執行的函數* @param view 事件源(用戶點擊誰執行了當前函數,誰就是事件源)*/public void login(View view){//Toast.makeText(this,"view="+view,Toast.LENGTH_LONG).show();//得到用戶名控件中輸入的文本的內容String userName=editText_userName.getText().toString().trim();String password=editText_password.getText().toString().trim();//如果userName為null或者""則TextUtils.isEmpty(userName)返回True,說明用戶沒有輸入內容if(TextUtils.isEmpty(userName)){this.editText_userName.setError("用戶名必須輸入!");this.editText_userName.requestFocus();return;}/*if("admin".equals(userName) && "123".equals(password)){Toast.makeText(this,//上下文對象,當前Activity 是上下文對象的子類,因此可以直接使用當前對象thisuserName+"登錄成功!",//顯示的提示信息Toast.LENGTH_LONG //顯示的時長).show();//讓土司顯示}else{Toast.makeText(this,"用戶名或者密碼錯誤",Toast.LENGTH_SHORT).show();}*/if("admin".equals(userName)){this.editText_password.requestFocus();if(TextUtils.isEmpty(password)){this.editText_password.setError("密碼必須輸入!");this.editText_password.requestFocus();return;}if("123".equals(password)){Toast.makeText(this,userName+"登錄成功!",Toast.LENGTH_LONG).show();}else{Toast.makeText(this,"密碼錯誤",Toast.LENGTH_SHORT).show();this.editText_password.setText("");this.editText_password.requestFocus();}}else{Toast.makeText(this,"用戶名錯誤",Toast.LENGTH_SHORT).show();this.editText_userName.setText("");this.editText_userName.requestFocus();}}/*** 當用戶點擊重置按鈕時執行的函數* @param view*/public void reset(View view){//將控件的文本內容設置為空this.editText_userName.setText(null);this.editText_password.setText(null);//讓用戶名控件獲得焦點this.editText_userName.requestFocus();} }總結
以上是生活随笔為你收集整理的android线性布局的实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 百度视频宣布完成B轮融资 共计投资1亿美
- 下一篇: 可转债t0交易一天可以几次