熟悉常见的界面布局方式
掌握常见控件的使用方法和事件处理。
二、实验环境
1、微型计算机一台
2、WINDOWS操作系统,eclipse ADT.
三、实验内容
按下列要求完成实验内容。 1、用P+学号为项目名称,创建一个android应用程序项目,如:包同学学号155262013001,则创建的项目名称为:P155262013001。
2、创建一个注册用户和用户信息布局界面,界面效果图如下所示,并编写相应的Activity业务逻辑代码和配置文件。
3、实现功能基本要求:
用户名和密码必填,两次密码必须要一样。
勾选了“同意相关法律协议”才能点击注册按钮。
操作过程中出现不符合注册条件的情况,给予短暂的提示,然后自动消失。 注册成功后,跳转到显示用户基本信息界面,用户基本信息列表使用ListView控件实现。 点击“知道了”,提示:注册成功,等待进入主界面
四、实验步骤和结果
(1) 首先建立安卓项目,按照实验要求,项目名为P+个人学号。
(2) 在res文件里的layout文件下建立activity_ main.xml文件,表格布局的整齐性,实现注册布局,实现效果如图一,具体代码如下:
android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:gravity=\"right\" android:text=\"用户名\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:orientation=\"horizontal\" > android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:checked=\"true\" android:text=\"男\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:text=\"女\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:inputType=\"number\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:inputType=\"textPassword\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:inputType=\"textPassword\" /> android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:text=\"同意相关法律协议\" />
图一:表格布局实现的注册界面
(3) 在src文件里,新建com.example.p155262013017包后创建一个类继承ActionBarActivity类,根据实验要求实现如下代码: package com.example.p155262013017;
import android.support.v7.app.ActionBarActivity; import android.content.Intent; import android.os.Bundle; import android.view.View;
import android.view.View.OnClickListener; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.Toast;
public class MainActivity extends ActionBarActivity implements OnClickListener{
private Button loginButton; private EditText userName; private EditText userTel; private EditText userQQ; private RadioGroup group; private EditText onePasswd; private EditText twoPasswd; private CheckBox checkAgree; private String checkSex=\"男\";
@Override
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
loginButton = (Button) findViewById(R.id.loginButton); userName = (EditText) findViewById(R.id.textUserName); userTel = (EditText) findViewById(R.id.textTel); userQQ = (EditText) findViewById(R.id.textQQ);
onePasswd = (EditText) findViewById(R.id.onePassword); twoPasswd = (EditText) findViewById(R.id.twoPassword); checkAgree = (CheckBox) findViewById(R.id.agreeId); group = (RadioGroup) findViewById(R.id.checkSex); group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkId) { // TODO Auto-generated method stub
RadioButton radioButton=(RadioButton)findViewById(checkId); checkSex=radioButton.getText().toString(); } });
loginButton.setOnClickListener(this); }
@Override
public void onClick(View v) { if(checkAgree.isChecked()){
if(onePasswd.getText().toString().equals(twoPasswd.getText().toString())){ Intent intent =new Intent();
intent.setClass(MainActivity.this, OtherActivity.class); Bundle bundl=new Bundle();
bundl.putString(\"name\
bundl.putString(\"sex\
bundl.putString(\"tel\ bundl.putString(\"qq\ intent.putExtras(bundl);
MainActivity.this.startActivity(intent); MainActivity.this.finish(); }else{
DisplayToast(\"两次输入密码不同!\"); } }
else{
DisplayToast(\"请同意相关协议!\"); } }
public void DisplayToast(String str){ Toast.makeText(this, str, 1).show(); } }
(4)按照步骤2在layout创建注册成功时跳转的界面other.xml文件,实现效果如图二,具体代码如下:
android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" android:gravity=\"center\"/> android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" >
图二:注册成功后跳转界面
(5)重复步骤3,另键一个OtherActivity.java类,实现返回界面,具体代码如下: package com.example.p155262013017;
import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View;
import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView;
public class OtherActivity extends Activity implements OnClickListener{ private Button returnButton; private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.other);
returnButton = (Button) findViewById(R.id.returnId); listView = (ListView) findViewById(R.id.listView); this.registerForContextMenu(listView); Intent intent=this.getIntent(); Bundle bundle=intent.getExtras();
String[] string=new String[]{\"用户名:\"+bundle.getString(\"name\"),\"性别:\"+bundle.getString(\"sex\"),\"手机:\"+bundle.getString(\"tel\"),\"QQ:\"+bundle.getString(\"qq\")};
listView.setAdapter(new ArrayAdapter @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent =new Intent(); intent.setClass(OtherActivity.this, MainActivity.class); OtherActivity.this.startActivity(intent); OtherActivity.this.finish(); } } (6)在 AndroidManifest.xml里为新建的OtherActivity注册,运行程序调试,完成本 次实验,注册代码如下: 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务