Android基础开发-练习三
更新时间:2024-06-20 11:55:01 阅读量: 综合文库 文档下载
实验3 Android界面控件与布局 实验目的:
1. 掌握Android常用界面控件的使用方法。 2. 掌握控件响应函数的编写方法。 3. 掌握各种界面布局的特点和使用方法。
实验内容与步骤:
1. 使用TabHost(Tab标签页)建立3个标签页,每个标签页对应于一个布局(从线性布局、框架布局、相对布局、表格布局中任选3个)实现下图界面。
说明:所建的三个标签页分别使用:线性布局(TAB1)、相对布
局(TAB2)、表格布局(TAB3),实验截图分别为:图1,图2,
图3。 实验截图:
图1
图2
图3
2. 使用TabHost(Tab标签页)建立3个标签页,各标签页控件内容如下:
1. 分页1标题为“多选及单选演示”,含有一个TextView控件,3个CheckBox控件和1组(含4个) RadioButton控件。 TextView控件用于显示用户点击某控件后的结果。 实验截图:如图4所示
图4
2. 分页2标题为“Spinner演示”,含有2个Spinner控件,一个Spinner用于选择年级(大一~大四),另一个用于选择性别。
实验截图:如图5、6所示
图5
图6
3. 分页3标题为“ListView演示”,含有一个ListView控件(拥有10个子项),一个TextView控件用于显示用户点击某子项后的结果 实验截图:如图7所示
图7
3. 在第1题的按钮栏下面添加一个TextView控件用于显示数据,然后实现“添加数据”、“全部显示”、“清除显示”和“全部删除”4个按钮的功能。
说明:本操作需要操作数据库,目前暂未开发),仅实现的是将所输入的数据显示到下面的TextView里面(如图8所示)。
图8
4. 实现第2题中各个控件的点击响应功能,响应结果显示在所在页的TextView控件中。 实验截图:如图9,10,11所示
图9
图10
图11
核心代码
1、3题:
activity_main_activity207.xml:
xmlns:android=\roid\ android:id=\ android:layout_width=\ android:layout_height=\> android:orientation=\ android:layout_width=\ android:layout_height=\> android:id=\ android:layout_width=\ android:layout_height=\ /> android:id=\ android:layout_width=\ android:layout_height=\/>
activity_tab1_activity207.xml:
xmlns:android=\roid\ android:orientation=\ android:layout_width=\ android:layout_height=\> android:orientation=\ android:layout_width=\ android:layout_height=\ android:padding=\> android:layout_width=\ android:layout_height=\/> android:orientation=\ android:layout_width=\ android:layout_height=\ android:padding=\> android:layout_width=\ android:layout_height=\/> android:orientation=\ android:layout_width=\ android:layout_height=\ android:padding=\> android:layout_width=\ android:layout_height=\/> android:orientation=\ android:layout_width=\ android:layout_height=\ android:padding=\ android:paddingRight=\> android:id=\ android:layout_width=\ android:layout_height=\ android:text=\/>
activity_tab2_activity207.xml:
xmlns:android=\roid\ xmlns:tools=\ android:layout_width=\ android:layout_height=\ android:paddingBottom=\n\ android:paddingLeft=\n\ android:paddingRight=\in\ android:paddingTop=\ tools:context=\ > android:layout_height=\ android:text=\ android:layout_alignParentLeft=\ android:layout_marginTop=\> android:layout_height=\ android:layout_toRightOf=\ android:layout_alignBottom=\> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\ android:paddingLeft=\> android:layout_height=\ android:text=\/> android:layout_height=\ android:text=\ android:layout_toRightOf=\/> android:layout_height=\ android:text=\ android:layout_toRightOf=\/> android:layout_height=\ android:text=\ android:layout_toRightOf=\/> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\ android:paddingLeft=\> android:id=\ android:layout_width=\ android:layout_height=\ android:text=\/>
activity_tab3_activity207.xml:
xmlns:android=\roid\ xmlns:tools=\ android:layout_width=\ android:layout_height=\ android:paddingBottom=\n\ android:paddingLeft=\n\ android:paddingRight=\in\ android:paddingTop=\ tools:context=\ > android:shrinkColumns=\> android:collapseColumns='0' android:id=\ android:layout_width=\ android:layout_height=\ android:text=\> android:layout_width=\ android:layout_height=\ android:text=\> android:layout_height=\ android:text=\ android:shrinkColumns=\/> android:layout_height=\ android:text=\ android:shrinkColumns=\/> android:layout_height=\ android:text=\ android:shrinkColumns=\/> android:layout_height=\ android:text=\ android:shrinkColumns=\/> android:id=\ android:layout_width=\ android:layout_height=\ android:text=\/>
MainActivity207.java: package cqut.hjr;
import android.app.TabActivity; import android.content.Intent; import android.os.Bundle;
import android.widget.TabHost;
@SuppressWarnings(\
public class MainActivity207 extends TabActivity { /** Called when the activity is first created. */ @Override
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_activity207);
TabHost tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec(\ setIndicator(\线性布局\Tab1Activity207.class)));
Intent().setClass(this,
tabHost.addTab(tabHost.newTabSpec(\
setIndicator(\相对布局\Tab2Activity207.class)));
tabHost.addTab(tabHost.newTabSpec(\
setIndicator(\表格布局\Tab3Activity207.class))); } }
Tab1Activity207.java: package cqut.hjr;
import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast;
public class Tab1Activity207 extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tab1_activity207); /**
* 业务处理(包括对按钮的响应事件) */
//以findViewById()获取各个控件对象,添加监听(器)事件 final EditText nameText=(EditText)findViewById(R.id.nameEdit); final EditText ageText=(EditText)findViewById(R.id.ageEdit);
final EditText shengaoText=(EditText)findViewById(R.id.shengaoEdit); final Button addButton=(Button)findViewById(R.id.addButton);
final Button showallButton=(Button)findViewById(R.id.showallButton); final Button cleanButton=(Button)findViewById(R.id.cleanButton); final Button deleteButton=(Button)findViewById(R.id.deleteButton);
final TextView showText=(TextView)findViewById(R.id.showAboutText);
Button.OnClickListener buttonListener=new Button.OnClickListener(){ @Override public void onClick(View v){
Intent().setClass(this,
Intent().setClass(this,
switch(v.getId()){
/*添加数据操作*/ case R.id.addButton:
showText.setText(\姓名:\\年龄:\身高:\ Toast.makeText(Tab1Activity207.this, \相关数据库正在开发中。。。\ return;
//全部显示操作
case R.id.showallButton:
Toast.makeText(Tab1Activity207.this, \相关数据库正在开发中。。。\ return; //清除显示操作 case R.id.cleanButton: Toast.makeText(Tab1Activity207.this, \相关数据库正在开发中。。。\ return;
//全部删除操作
case R.id.deleteButton:
Toast.makeText(Tab1Activity207.this, \相关数据库正在开发中。。。\ return; } } }; //将四个Button的监听事件注册到setOnClickListener里面 addButton.setOnClickListener(buttonListener); showallButton.setOnClickListener(buttonListener); cleanButton.setOnClickListener(buttonListener); deleteButton.setOnClickListener(buttonListener); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.tab1_activity207, menu); return true; } }
Tab2Activity207.java:(略) Tab3Activity207.java:(略)
2、4题:
activity_main_activity207.xml:
xmlns:android=\roid\ android:id=\ android:layout_width=\ android:layout_height=\> android:orientation=\ android:layout_width=\ android:layout_height=\> android:id=\ android:layout_width=\ android:layout_height=\ /> android:id=\ android:layout_width=\ android:layout_height=\/>
activity_tab1_activity207.xml:
xmlns:android=\roid\ xmlns:tools=\ android:layout_width=\ android:layout_height=\ android:paddingBottom=\n\ android:paddingLeft=\n\ android:paddingRight=\in\ android:paddingTop=\ tools:context=\ > android:id=\ android:layout_width=\ android:layout_height=\ android:text=\ /> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\ android:text=\> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\ android:text=\> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\ android:text=\> android:id=\ android:contentDescription=\ android:layout_width=\ android:layout_height=\ android:layout_below=\> android:layout_width=\ android:layout_height=\ android:id=\ android:text=\ android:checked=\> android:layout_width=\ android:layout_height=\ android:id=\ android:text=\> android:layout_width=\ android:layout_height=\ android:id=\ android:text=\> android:layout_width=\ android:layout_height=\ android:id=\ android:text=\ >
activity_tab2_activity207.xml:
xmlns:android=\roid\ xmlns:tools=\ android:layout_width=\ android:layout_height=\ android:paddingBottom=\n\ android:paddingLeft=\n\ android:paddingRight=\in\ android:paddingTop=\ tools:context=\ > android:id=\ android:layout_width=\ android:layout_height=\ android:layout_alignParentLeft=\ android:text=\年级:\/> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\ android:text=\性别:\/> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\>
activity_tab3_activity207.xml:
xmlns:android=\roid\ xmlns:tools=\ android:layout_width=\ android:layout_height=\ android:paddingBottom=\n\ android:paddingLeft=\n\ android:paddingRight=\in\ android:paddingTop=\ tools:context=\ > android:id=\ android:layout_width=\ android:layout_height=\ android:text=\ /> android:id=\ android:layout_width=\ android:layout_height=\ android:layout_below=\>
MainActivity207.java: package cqut.hjr;
import android.app.TabActivity; import android.content.Intent; import android.os.Bundle;
import android.widget.TabHost;
@SuppressWarnings(\
public class MainActivity207 extends TabActivity { /** Called when the activity is first created. */ @Override
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_activity207);
TabHost tabHost = getTabHost();
tabHost.addTab(tabHost.newTabSpec(\ setIndicator(\多选及单选
演
Intent().setClass(this,Tab1Activity207.class)));
tabHost.addTab(tabHost.newTabSpec(\ setIndicator(\演示Intent().setClass(this,Tab2Activity207.class)));
tabHost.addTab(tabHost.newTabSpec(\ setIndicator(\演示Intent().setClass(this,Tab3Activity207.class)));
} }
Tab1Activity207.java: package cqut.hjr;
import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View;
import android.view.View.OnClickListener; import android.widget.Button; import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.TextView; import android.widget.Toast;
public class Tab1Activity207 extends Activity { @Override
示
\
\
\
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tab1_activity207); /**
*业务处理相关(包括各个复选框的点击响应事件) */
//以findViewById()获取各个控件对象
final CheckBox checkBox1=(CheckBox)findViewById(R.id.checkBox1); final CheckBox checkBox2=(CheckBox)findViewById(R.id.checkBox2); final CheckBox checkBox3=(CheckBox)findViewById(R.id.checkBox3);
final RadioGroup radiogroup=(RadioGroup)findViewById(R.id.radioGroup); final RadioButton radio1=(RadioButton)findViewById(R.id.radioButton1); final RadioButton radio2=(RadioButton)findViewById(R.id.radioButton2); final RadioButton radio3=(RadioButton)findViewById(R.id.radioButton3); final RadioButton radio4=(RadioButton)findViewById(R.id.radioButton4);
final TextView showText=(TextView)findViewById(R.id.showText);
/*为复选框添加单击事件监听器*/
CheckBox.OnClickListener check_Listener=new CheckBox.OnClickListener() { @Override public void onClick(View v) { /*处理选中状态改变事件*/ String checkBox=\用来保存复选框选中的值 if(checkBox1.isChecked()) { checkBox=checkBox1.getText().toString()+\ } if(checkBox2.isChecked()) { checkBox+=checkBox2.getText().toString()+\ } if(checkBox3.isChecked()) { checkBox+=checkBox3.getText().toString()+\ } showText.setText(\您(复)选的是:\ } };
//将三个CheckBox的单击事件注册到check_Listener里面 checkBox1.setOnClickListener(check_Listener); checkBox2.setOnClickListener(check_Listener);
}
checkBox3.setOnClickListener(check_Listener);
/*为单选框添加单击事件监听器*/
RadioButton.OnClickListener radio_Listener=new RadioButton.OnClickListener(){
@Override
public void onClick(View v) { } };
String radio=\用来保存单选按钮选中的值
if(radio1.isChecked()){ radio=radio1.getText().toString()+\}
else if(radio2.isChecked()){ radio=radio2.getText().toString()+\}
else if(radio3.isChecked()){ radio=radio3.getText().toString()+\}
showText.setText(\您(单)选的是:\
//将三个RadioButton的单击事件注册到radio_Listener里面 radio1.setOnClickListener(radio_Listener); radio2.setOnClickListener(radio_Listener); radio3.setOnClickListener(radio_Listener); }
@Override
public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.tab1_activity207, menu); return true; }
Tab2Activity207.java: package cqut.hjr;
import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View;
import android.widget.AdapterView; import android.widget.ArrayAdapter;
正在阅读:
Android基础开发-练习三06-20
中国现代文学史 - 名词解释、简答、论述题及答案 - 彩色提示重点笔记及历届试题(1)09-21
压力管道培训之材料8管道施工及验收规范04-23
关注中国邮政建立企业年金制度-文档资料09-16
关于照片的作文400字5篇04-01
室分建设原则10-20
浏览器插件之ActiveX开发05-21
局域网课后习题05-30
降幂公式、辅助角公式应用10-22
- 天大砼方案 - 图文
- 农业科技网络书屋能力提升_玉米错题选
- DNS习题
- 浅议检察官对罪犯谈话的技巧与效果
- 高考语文文言文翻译专题训练
- AB类学科竞赛目录(2015)
- 建筑面积计算新规定(2015最新)
- Revit2012初级工程师题集一
- 十三五项目米线可行性报告
- 2013体育学院党组织建设工作总结
- 2014Revit工程师题库
- 高中数学如何实施研究性学习
- 茶艺表演 中英互译
- 小学音乐湘文艺版 四年级下册 第十一课《(歌表演)脚印》优质课公
- 山西省农村合作经济承包合同管理条例
- 2015年镇江市中考化学一模试题参考答案及评分标准(定稿)
- 统计 题集
- 批评意见清单
- 8潞安集团蒲县黑龙关煤矿矿业公司2
- 鄂教版四年级语文上册复习精要(光谷四小)
- 练习
- Android
- 基础
- 开发
- 2014学年市场营销学(A)试卷A卷
- 设计概论作业
- 糖尿病患者的出院指导
- 2017-2018年江苏省盐城市东台市三仓片区初二下学期期中数
- TSI系统故障分析及维护
- 机械设计课程设计-带式运输机的展开式两级圆柱齿轮减速器设计
- 浏阳市大瑶镇城乡一体化建设规划提纲 - 图文
- 土方开挖及支护细则
- 特种加工技术的现代应用及其发展研究
- “可行的”城市设计 - 当代城市设计的定义、方法、作用及未来 -
- 湖南民营企业人才流失现状及对策与分析
- 德汉汽车工程词典 - 缩写词
- 积分兑换合同范本
- 山东省高级人民法院关于印发全省民事审判工作会议纪要的通知鲁高
- 试论幼儿欺负行为及其干预策略
- 中国化肥面源污染EKC验证及其驱动因素-2019年精选文档
- 崔峦在全国小语第八届阅读教学研讨会上的讲话
- 《学前儿童卫生学》练习题及答案13、3
- 2015年学校教育教学工作汇报材料修改
- 固定资产业务操作手册