ANDROID实验报告组件布局
安卓控件的操作实验报告

一、实验目的通过本次实验,掌握安卓常用控件的基本属性、方法和事件处理,熟悉这些控件在实际应用中的使用方法,提高对安卓界面设计的理解和应用能力。
二、实验环境1. 操作系统:Windows 102. 开发工具:Android Studio3.5.33. 手机型号:华为Mate 20三、实验内容本次实验主要涉及以下安卓常用控件:1. TextView2. EditText3. Button4. ImageView5. RadioButton6. CheckBox7. Spinner8. ListView四、实验步骤1. 创建一个新的Android项目,命名为“ControlOperation”。
2. 在布局文件activity_main.xml中添加以下控件:```xml<TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content" android:text="Hello World!"android:layout_marginTop="20dp" /><EditTextandroid:id="@+id/editText1"android:layout_width="match_parent"android:layout_height="wrap_content" android:hint="Enter your name" /><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content" android:text="Click Me!" /><ImageViewandroid:id="@+id/imageView1"android:layout_width="wrap_content"android:layout_height="wrap_content" android:src="@drawable/ic_launcher" /> <RadioButtonandroid:id="@+id/radioButton1"android:layout_width="wrap_content"android:layout_height="wrap_content" android:text="Male" /><CheckBoxandroid:id="@+id/checkbox1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Subscribe to newsletter" /><Spinnerandroid:id="@+id/spinner1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:entries="@array/countries" /><ListViewandroid:id="@+id/listView1"android:layout_width="match_parent"android:layout_height="wrap_content" />```3. 在strings.xml文件中添加以下字符串资源:```xml<string name="app_name">Control Operation</string> <string name="enter_name">Enter your name</string> <string name="click_me">Click Me!</string><string-array name="countries"><item>China</item><item>USA</item><item>Japan</item></string-array>```4. 在MainActivity.java文件中添加以下代码:```javaimport android.os.Bundle;import android.view.View;import android.widget.ArrayAdapter;import android.widget.Button;import android.widget.EditText;import android.widget.ImageView;import android.widget.RadioButton;import android.widget.RadioGroup;import android.widget.ScrollView;import android.widget.TextView;import android.widget.CheckBox;import android.widget.Spinner;import android.widget.ListView;import android.widget.ArrayAdapter;import android.widget.Toast;import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { private TextView textView1;private EditText editText1;private Button button1;private ImageView imageView1;private RadioButton radioButton1;private CheckBox checkBox1;private Spinner spinner1;private ListView listView1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(yout.activity_main);textView1 = findViewById(R.id.textView1);editText1 = findViewById(R.id.editText1);button1 = findViewById(R.id.button1);imageView1 = findViewById(R.id.imageView1);radioButton1 = findViewById(R.id.radioButton1);checkBox1 = findViewById(R.id.checkbox1);spinner1 = findViewById(R.id.spinner1);listView1 = findViewById(R.id.listView1);ArrayAdapter<CharSequence> adapter =ArrayAdapter.createFromResource(this,R.array.countries, yout.simple_spinner_item);adapter.setDropDownViewResource(yout.simple_spinner_dropdown _item);spinner1.setAdapter(adapter);button1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {String name = editText1.getText().toString();Toast.makeText(MainActivity.this, "Hello " + name, Toast.LENGTH_SHORT).show();}});radioButton1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Toast.makeText(MainActivity.this, "You selected Male", Toast.LENGTH_SHORT).show();}});checkBox1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {if (checkBox1.isChecked()) {Toast.makeText(MainActivity.this, "You subscribed to the newsletter", Toast.LENGTH_SHORT).show();} else {Toast.makeText(MainActivity.this, "You unsubscribed from the newsletter", Toast.LENGTH_SHORT).show();}}});}}```5. 运行程序,观察效果。
Andriod应用开发实验报告

Andriod应用开发的实作报告一、实现功能描述响应式布局就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。
这个概念是为解决移动互联网浏览而诞生的。
使用Bootstrap来实现响应式布局,根据浏览者使用的浏览工具来进行变化从而达到浏览效果,实现一个响应式布局解决移动互联网浏览面对不同分辨率的设备灵活性。
二、实现技术Css、html、bootstraphtml实现页面的塔建。
css实现页面样式布局。
bootstrap实现页面响应式布局。
Bootstrap 提供了一个带有网格系统、链接样式、背景的基本结构。
三、实现的布局分析将页面划分为三个部分,分别是头部、主内容区、页脚和底部、用栅格系统写主内容的左边部分和右边部分,栅格系统默认左边占8格右边占4格以达到最佳效果,主内容的左边部分和右边部分都是一个元素。
整个布局中的一些小图标和二维码等需要截图保存,在代码中应用"img/logo.jpg"插入。
四、实现细节响应式布局网站必须是一个标签。
1、利用html搭建网页页面,需要四个div来整体布局四部分。
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>JAVA学习空间</title></head><body><div class="container" id="top"></div><div class="collapse navbar-collapse"id="bs-example-navbar-collapse-1"></div><div class="container-fluid" id="my_content"></div><div class=”class="boottom”></div><script type="text/javascript"src="bootcss/js/jquery-3.4.1.min.js"></script><script type="text/javascript"src="bootcss/js/bootstrap.min.js"></script></body></html>(1)主内容区内容运用格栅系统分左边和右边,只需两个div(2)右侧内容需要用<div class=”clearfix”></div>清除漂浮(3)页脚的分页处理(4)底部2、利用css优化网页结构。
安卓实验报告

安卓实验报告Android是目前全球最为流行的操作系统之一,其强大的应用程序生态系统和广泛的设备兼容性使得安卓成为开发者和用户的首选。
本文将介绍我在安卓实验中进行的一系列任务和实验结果。
实验一:安装开发环境在进行安卓开发之前,我们首先需要安装必要的开发环境。
我使用的是Android Studio,这是谷歌官方提供的开发工具,具有强大的功能和友好的用户界面。
通过安装Android Studio,我成功搭建了安卓开发环境,并进行了一些基本的配置。
实验二:创建第一个安卓应用程序根据老师的指导,我按照步骤成功创建了我的第一个安卓应用程序。
我选择了一个简单的计算器应用程序作为开始,它可以实现基本的加法和减法功能。
通过这个实验,我学会了使用Android Studio的界面设计工具和编写基本的Java代码。
实验三:UI设计和布局在这个实验中,我学习了安卓应用程序的用户界面设计和布局。
我使用了安卓提供的各种布局方式,如线性布局、相对布局和帧布局等,来设计和展示应用程序的不同界面。
通过这个实验,我对安卓界面设计的原则和技巧有了更深入的理解。
实验四:应用程序调试与测试在开发过程中,调试和测试是非常重要的环节。
通过Android Studio提供的调试工具,我能够针对应用程序中的问题进行定位和修复。
我还学会了使用模拟器和真机进行应用程序的测试,以确保应用程序的功能和稳定性。
实验五:数据库操作在这个实验中,我学习了如何在安卓应用程序中使用数据库。
我使用了SQLite数据库来存储和管理应用程序的数据。
通过编写SQL语句,我能够进行数据的插入、查询、更新和删除等操作。
这为我今后的应用程序开发提供了非常有用的技能。
总结:。
实验6 Android常用布局

实验6Android常用布局6.1 实验目的☆掌握Android常用布局的常用属性和使用方法。
6.2 实验内容☆测试Android常用布局使用方法6.3 实验原理常用布局有:表格布局、线性布局,相对布局1)表格布局(Table Layout)的布局方式和HTML语言的<table>标签和<tr>标签非常类似。
<TableLayout>定义整个表格,表格可以有多行,并且每一行可以有多个组件,但是每一行的组件内部可以像HTML语言一样可以再设定行,需要的话,可以采用嵌套布局方式,再加入一个窗体布局。
<TableRow>定义表格内的组件,这些组件可以设置为某一类的创作套件Widget或保持空的状态,比如TextView、EditView、Button等。
<?xml version="1.0" encoding="utf-8"?><TableLayout xmlns:android="/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"android:stretchColumns="1"><TableRow ><TextViewandroid:text="1-1"android:textSize="10pt"android:background="#aa0000"/><TextViewandroid:textSize="10pt"android:text="1-2"android:background="#00aa00"/> <TextViewandroid:textSize="10pt"android:text="1-3"android:background="#aa0000"/> </TableRow><TableRow ><TextViewandroid:textSize="10pt"android:text="2-1"android:background="#0000aa"/> <TextViewandroid:textSize="10pt"android:text="2-2"android:background="#aa0000"/> </TableRow></TableLayout>实验结果如图6-1所示。
Android之四大组件、六大布局、五大存储总结

Android之四⼤组件、六⼤布局、五⼤存储总结Android之四⼤组件、六⼤布局、五⼤存储⼀.四⼤组件:四⼤组件分别为activity、service、content provider、broadcast receiver。
⼀、android四⼤组件详解1、activity(1)⼀个Activity通常就是⼀个单独的屏幕(窗⼝)。
(2)Activity之间通过Intent进⾏通信。
(3)android应⽤中每⼀个Activity都必须要在AndroidManifest.xml配置⽂件中声明,否则系统将不识别也不执⾏该Activity。
2、service(1)service⽤于在后台完成⽤户指定的操作。
service分为两种:(a)started(启动):当应⽤程序组件(如activity)调⽤startService()⽅法启动服务时,服务处于started状态。
(b)bound(绑定):当应⽤程序组件调⽤bindService()⽅法绑定到服务时,服务处于bound状态。
(2)startService()与bindService()区别:(a)started service(启动服务)是由其他组件调⽤startService()⽅法启动的,这导致服务的onStartCommand()⽅法被调⽤。
当服务是started 状态时,其⽣命周期与启动它的组件⽆关,并且可以在后台⽆限期运⾏,即使启动服务的组件已经被销毁。
因此,服务需要在完成任务后调⽤stopSelf()⽅法停⽌,或者由其他组件调⽤stopService()⽅法停⽌。
(b)使⽤bindService()⽅法启⽤服务,调⽤者与服务绑定在了⼀起,调⽤者⼀旦退出,服务也就终⽌,⼤有“不求同时⽣,必须同时死”的特点。
(3)开发⼈员需要在应⽤程序配置⽂件中声明全部的service,使⽤<service></service>标签。
实验2 android的界面设计(控件与布局)

实验2 android的界面设计(控件与布局)学时:4学时一、实验目的:1、了解Android编程原理2、掌握界面控件设计3、了解和熟悉常用控件的使用、界面布局等内容。
二、实验内容:1.基本控件的制作:(1)TextView的制作:a)体会Autolink,依次更换属性:web/phone/all/email/b) 制作跑马灯效果android:ellipsize 设置当文字过长时,该控件该如何显示。
有如下值设置:”start”—-省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中间;”marquee”——以跑马灯的方式显示(动画横向移动)android:marqueeRepeatLimit 在ellipsize 指定marquee 的情况下,设置重复滚动的次数,当设置为marquee_forever 时表示无限次。
android:focusableInTouchMode:是否在触摸模式下获得焦点。
android:focusable 控件是否能够获取焦点(2)EditView制作(a) maxLength:最大输入长度属性(b) singleLine:多行文本框(c) inputType:限制输入文本类型(d) hint:设置提示信息2.布局设计(1) LinearLayout布局:(2)Relative Layout:(3)Table Layout3.建立一个如图所示的图形界面:4.用ListView制作如图界面(图片自定) (将该题以你的学号命名,发给你班的学习委员,以班为单位统一发给我,我的邮箱为:****************):5.用expandablelistview制作如下界面:6.对话框制作:(2)部分程序代码:protected void dialog() {AlertDialog.Builder builder = new Builder(Main.this);builder.setMessage("确认退出吗?");builder.setTitle("提示");builder.setPositiveButton("确认", new OnClickListener() { @Overridepublic void onClick(DialogInterface dialog, int which) { dialog.dismiss();Main.this.finish();}});builder.setNegativeButton("取消", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {dialog.dismiss();}});builder.create().show();}//在onKeyDown(int keyCode, KeyEvent event)方法中调用此方法public boolean onKeyDown(int keyCode, KeyEvent event) {if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {//点后退键的时候,为了防止点得过快,触发两次后退事件dialog();}return false;}(2)界面如下:部分代码:Dialog dialog = new AlertDialog.Builder(this).setIcon(android.R.drawable.btn_star).setTitle("喜好调查").setMessage("你喜欢李连杰的电影吗?").setPositiveButton("很喜欢",new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {// TODO Auto-generated method stub Toast.makeText(Main.this, "我很喜欢他的电影。
Android实验报告—Android框架及Activity 生命周期程序设计

Android框架及Activity 生命周期程序设计实验目的:本实验的目的是使学生深入了解Android程序框架结构、了解Android组件的生命周期中各状态的变化关系、掌握Android应用程序的调试方法和工具。
通过程序设计, 掌握Activity的三种生命周期:全生命周期、可视生命周期和活动生命周期;每种生命周期中包含的不同的事件回调函数, 以及它们的作用和调用顺序, 深入理解Activity的生命周期过程。
实验要求:根据下图, 设计程序解释不同的事件回调函数在Activity的三种生命周期的作用如何。
[实现提示]1.建立Android工程, 其中工程名称: ActivityLifeCycle你的学号包名称:.bistu.你的班级号.ActivityLifeCycle你的学号Activity名称: ActivityLifeCycle你的学号如: 电技1001班学号后三位为123的学生, 应将包名称设为:.bistu.dj1001.ActivityLifeCycle1232、工程建立完毕后, 可以不进行界面设计, 即不必修改main.xml文件, 直接编写Java文件3.通过在生命周期函数中添加“日志点”的方法进行调试4、为了显示结果易于观察和分析, 在LogCat设置过滤器LifeCycleFilter测试过程在程序运行过程, 通过点击模拟器上的“返回键”, 生命周期中事件回调函数的执行顺序及作用是函数的调用顺序: onSaveInstanceState ()→onPause()→onStop() →onRestart()→onStart()→onResume();调用onSaveInstanceState()函数保存Activity状态;调用onPause()和onStop(), 停止对不可见Activity的更新;调用onRestart()恢复需要界面上需要更新的信息;调用onStart()和onResume()重新显示Activity, 并接受用户交互。
实验报告9

硬件:PC机
软件: Eclipse
实验题.分别使用不同的界面布局:线性布局、框架布局、表格布局、相对布局、绝对布局和网格布局,设计实验实例中的控件界面,并对比各种布局实现的复杂程度和对不同屏幕尺寸的适应能力。给出程序运行后的截图。
实验题目(1)线性布局
实验解答:
能得到的结论:
实验报告
实验名称
实验九UI设计(界面布局)
指导教师
邵雯娟
学生姓名
张可可
班级学号
130602112
专业
网络工程
实验类型
验证
实验学时
2
实验时间
2016.5.16
一、实验目的和要求
1.掌握Android界面布局:线性布局、框架布局、表格布局、相对布局、绝对布局和网格布局。
2.分别使用不同的界面布局设计控件界面,并对比各种布局实现的复杂程度和对不同屏幕尺寸的适应能力。
实验题目(2)框架布局
实验解答:
能得到的结论:
实验题目(3)表格布局
实验解答:
能得到的结论:
实验题目(4)绝对布局
实验解答:
能得到的结论:
实验题目(5)相对布局
实验解答:
能得到的结论:
实验题目(6)网格布局
实验解答:
能得到的结论:
四、实验小结(绩
批阅人
日期
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
<TextView
android:id="@+id/lpwd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密 码
"
android:layout_below="@id/lname"
2、使用线性布局完成系统主界面 <LinearLayout xmlns:android="/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="#FFFFCC"> <TextView
RelativeLayout
三、实验步骤
1、用表格布局完成登录界面 <TableLayout xmlns:android="/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#FFFFCC" android:stretchColumns="0,3" > <ImageView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:gravity="left" android:minWidth="200px" android:id="@+id/ETname"/> </TableRow> <TableRow > <TextView/> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="right" android:text="@string/password" android:textStyle="bold" android:textColor="#000000"/> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="left" android:minWidth="200px" android:inputType="textPassword" android:id="@+id/ETpwd"/> </TableRow> <TableRow> <TextView /> <Button
Android 开发
(实验五)
实验题目:Android 组件布局试验 指导老师: 班 级:计算机科学与技术系班 姓 名:
一、实验目的
1、掌握 Android 组件布局的使用方法
2、学会组件布局的重要属性与应用
3、能够根据需求,通过布局构建各类实际的页面。
二、实验内容
组 件 布 局 有 : LinearLayout 、 TableLayout 、 FrameLayout 、
android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="注册" android:layout_gravity="center" android:textSize="30sp" android:textColor="#000000"/> <RelativeLayout xmlns:android="/apk/res/android"
android:textSize="20sp"
android:textColor="#000000"/>
<EditText
android:id="@+id/ename"
android:layout_width="200px"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/lname"/>
android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/lname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="用户名 " android:layout_gravity="center"
android:layout_height="5dp"/> <TableRow> <ImageView
android:layout_width="wrap_content" android:layout_height="100dp" android:src="@drawable/img" android:gravity="center" android:layout_span="4"/> </TableRow> <TableRow > <TextView/> <TextView
android:inputType="textPassword"
android:layout_toRightOf="@id/lpwd"
android:layout_alignTop="@id/lpwd"/>
<TextView
android:id="@+id/lapwd"
android:layout_width="wrap_content"
android:layout_alignTop="@id/lapwd"/>
<Button
android:id="@+id/Btok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="提交"
android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="欢迎登陆此系统!" android:layout_gravity="center" android:textSize="30sp" android:textColor="#000000"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="退出" android:textSize="30sp" android:textColor="#000000" android:id="@+id/Btquit"/> </LinearLayout>
android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="right" android:text="@string/username" android:textStyle="bold" android:textColor="#000000"/> <EditText android:layout_width="fill_parent"
4、事件代码如下: LayoutTestActivity.java package youttest; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText;