android注册界面高级,Android用户注册界面简单设计
本文實例為大家分享了Android用戶注冊界面的設(shè)計,供大家參考,具體內(nèi)容如下
I. 實例目標(biāo)
設(shè)計一個用戶注冊界面,在其中要使用到一些基礎(chǔ)控件,如 文本框、編輯框、按鈕、復(fù)選框等控件
II. 技術(shù)分析
首先在布局文件中使用控件的標(biāo)記來配置所需要的各個控件,然后在 主Activity中獲取到該控件,給其添加監(jiān)聽器來監(jiān)聽其操作,最后在控制臺輸出所操作的內(nèi)容。
III. 實現(xiàn)步驟
在Eclipse中創(chuàng)建 Android項目,名稱為 TestUserRegister 。設(shè)計一個用戶注冊界面,在其中要使用到 文本框、編輯框、按鈕、單選按鈕、復(fù)選框、列表選擇框、列表視圖、圖片視圖 等控件。
(1)在項目 res 目錄下的 drawable_ldpi 文件夾中,放入兩張名稱分別為 logo5.jpg 和 background3.jpg 的圖片,用于作為顯示的 logo 圖片和背景圖片。
(2)在項目的res/values 目錄中新建數(shù)組資源文件 arrays.xml ,在該文件中添加兩個字符串?dāng)?shù)組,名稱分別為 type 和 care,代碼如下
學(xué)生
老師
白領(lǐng)
工程師
其他
1.保護用戶個人信息
2.用戶在本網(wǎng)站上不得發(fā)布違法信息
3.保護個人賬號和密碼安全
4.本網(wǎng)站所有權(quán)和解釋權(quán)歸本網(wǎng)站擁有
(3)在項目的res/layout 目錄下修改 activity _main.xml 文件,首先將界面整體布局改為表格布局,并設(shè)置背景,之后添加一個圖像視圖作為 logo 圖像顯示,代碼如下:
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/background3">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/logo5"
android:id="@+id/imageView02"
android:layout_margin="5dp"
android:adjustViewBounds="true"
android:maxWidth="75dp"
android:maxHeight="60dp"/>
上述代碼中,android:adjustViewBounds 屬性用于設(shè)置 ImageView 是否調(diào)整自己的邊界來保持所需顯示圖片的長度變化,為 true 時表示調(diào)整自己的邊界來保持所需顯示圖片的長度變化; android:maxWidth 和 android:maxHeight 分別表示 ImageView 的最大寬度和最大高度。
(4)添加三個 TableRow 表格行,并在其中添加 3 個 文本框(TextView) 和 編輯框控件(EditText) ,用來顯示和填寫 用戶名、密碼 和 確認(rèn)密碼。具體代碼如下:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用戶名:"
android:layout_marginLeft="5dp"/>
android:layout_width="250dp"
android:layout_height="wrap_content"
android:hint="請輸入用戶名"
android:id="@+id/editText01"
android:singleLine="true"
android:inputType="textPersonName"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密碼:"
android:layout_marginLeft="5dp"/>
android:layout_width="250dp"
android:layout_height="wrap_content"
android:hint="請輸入密碼"
android:id="@+id/editText02"
android:singleLine="true"
android:inputType="textPassword"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="確認(rèn)密碼:"
android:layout_marginLeft="5dp"/>
android:layout_width="250dp"
android:layout_height="wrap_content"
android:hint="請輸入密碼"
android:id="@+id/editText03"
android:singleLine="true"
android:inputType="textPassword"/>
在上述代碼中,EditText 控件中的 android:singleLine = “true” 表示單行輸入文本, android:inputType=”textPersonName” 表示輸入類型為用戶名。 android:inputType=”textPassword” 表示輸入的內(nèi)容為密碼,將用 “ . ” 代替輸入的內(nèi)容,避免密碼泄露。
(5)添加一個線性布局,在其中添加一個文本框控件(TextView)和一個單選按鈕組(RadioGroup) , 其中在單選按鈕組中添加兩個單選按鈕控件,其中線性布局的 android:orientation 屬性設(shè)置為 “horizontal”,具體代碼如下
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_gravity="center_vertical"
android:text="請選擇您的性別" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:id="@+id/sex">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="男"
android:id="@+id/radioButton1"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女"
android:id="@+id/radioButton2"/>
(6)添加一個線性布局,在其中添加一個文本框(TextView) 和 一個列表選擇框控件(Spinner),線性布局的 android:orientation 屬性設(shè)置為 “horizontal” ,其中列表選擇框的 android:entries 屬性為 “@array/type”,代碼如下
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="請選擇您的身份"
android:layout_marginLeft="5dp"/>
android:entries="@array/type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/spinner"/>
(7)添加一個文本框控件(TextView) 、列表視圖控件(ListView) 、 復(fù)選框控件(CheckBox) 和 一個普通按鈕控件(Button) ,代碼如下
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="服務(wù)條款"
android:textSize="27sp"
android:gravity="center_horizontal"/>
android:id="@+id/listView"
android:entries="@array/care"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkBox"
android:text="我同意上述條款"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/reg"
android:text="注冊"
android:gravity="center_horizontal"
android:visibility="invisible"/>
上述代碼中,TextView控件的 android:gravity=”center_horizontal” 表示文本框控件在屏幕中水平放置;普通按鈕中的 android:visibility 屬性表示該控件是否可見,在這里設(shè)置的是不可見。
(8)activity_main.xml文件完整代碼
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/background3">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/logo5"
android:id="@+id/imageView02"
android:layout_margin="5dp"
android:adjustViewBounds="true"
android:maxWidth="75dp"
android:maxHeight="60dp"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用戶名:"
android:layout_marginLeft="5dp"/>
android:layout_width="250dp"
android:layout_height="wrap_content"
android:hint="請輸入用戶名"
android:id="@+id/editText01"
android:singleLine="true"
android:inputType="textPersonName"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密碼:"
android:layout_marginLeft="5dp"/>
android:layout_width="250dp"
android:layout_height="wrap_content"
android:hint="請輸入密碼"
android:id="@+id/editText02"
android:singleLine="true"
android:inputType="textPassword"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="確認(rèn)密碼:"
android:layout_marginLeft="5dp"/>
android:layout_width="250dp"
android:layout_height="wrap_content"
android:hint="請輸入密碼"
android:id="@+id/editText03"
android:singleLine="true"
android:inputType="textPassword"/>
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_gravity="center_vertical"
android:text="請選擇您的性別" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:id="@+id/sex">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="男"
android:id="@+id/radioButton1"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女"
android:id="@+id/radioButton2"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginTop="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="請選擇您的身份"
android:layout_marginLeft="5dp"/>
android:entries="@array/type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/spinner"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="服務(wù)條款"
android:textSize="27sp"
android:gravity="center_horizontal"/>
android:id="@+id/listView"
android:entries="@array/care"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkBox"
android:text="我同意上述條款"/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/reg"
android:text="注冊"
android:gravity="center_horizontal"
android:visibility="invisible"/>
(9)在MainActivity.java 文件中,獲取到復(fù)選框控件、普通按鈕控件、單選按鈕組控件和列表選擇框控件,并為它們添加監(jiān)聽器,代碼如下
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Spinner;
import android.app.Activity;
public class MainActivity extends Activity {
private Button reg = null;
private int location = -1;
private Spinner spinner = null;
private CheckBox checkBox = null;
private EditText editText01 = null ;
private EditText editText02 = null;
private EditText editText03 = null;
private RadioButton radio =null ;
private ListView listView = null;
private RadioGroup sex;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//找到關(guān)心的控件
reg = (Button) findViewById(R.id.reg);
spinner = (Spinner) findViewById(R.id.spinner);
checkBox = (CheckBox) findViewById(R.id.checkBox);
editText01 = (EditText) findViewById(R.id.editText01);
editText02 = (EditText) findViewById(R.id.editText02);
editText03 = (EditText) findViewById(R.id.editText03);
listView = (ListView) findViewById(R.id.listView);
sex = (RadioGroup) findViewById(R.id.sex);
ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.care, android.R.layout.simple_spinner_item);
listView.setAdapter(adapter);//適配器與列表視圖關(guān)聯(lián)
//為復(fù)選框控件添加監(jiān)聽器
checkBox.setOnCheckedChangeListener(new checkBoxOnCheckedChangeListener ());
sex.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
radio = (RadioButton) findViewById(checkedId);
}
});
spinner.setOnItemSelectedListener(new spinnerOnItemSelectedListener());
reg.setOnClickListener(new regOnClickListener());
}
class regOnClickListener implements OnClickListener{
public void onClick(View v) {
Log.i("您輸入的用戶名為:", editText01.getText().toString());
Log.i("您輸入的密碼為:", editText02.getText().toString());
Log.i("您輸入的確認(rèn)密碼為:", editText03.getText().toString());
if (radio != null) {
Log.i("您選擇的性別為:", radio.getText().toString());
}else {
Log.i("您選擇的性別為:", "無");
}
Log.i("您選擇的身份為:", spinner.getItemAtPosition(location).toString());
}
}
class spinnerOnItemSelectedListener implements OnItemSelectedListener{
public void onItemSelected(AdapterView> parent, View view,
int position, long id) {
//獲取下拉列表框控件選中的位置
location = position;
}
public void onNothingSelected(AdapterView> parent) {
}
}
//復(fù)選框控件監(jiān)聽器
class checkBoxOnCheckedChangeListener implements OnCheckedChangeListener{
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
if (isChecked) {
reg.setVisibility(View.VISIBLE);
}else {
reg.setVisibility(View.INVISIBLE);
}
}
}
}
在上述代碼中,通過下拉列表框控件的監(jiān)聽器來獲取所選內(nèi)容的位置,然后賦值給 location 變量;在復(fù)選框控件的監(jiān)聽器中,如果該復(fù)選框被選中,則注冊按鈕顯示可見,否則不可見。
IV. 運行
未填寫信息前
填寫信息并點擊注冊后
控制臺輸出信息
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
總結(jié)
以上是生活随笔為你收集整理的android注册界面高级,Android用户注册界面简单设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 消息称高通 Oryon 处理器获戴尔支持
- 下一篇: if函数如何嵌入多个android,An