安卓期末复习材料

一、填空题
1)TextView不换行

android:singleLine=“true”

2)创建一个MyService的Service
public class MyService extends Service{
    // 必须实现的方法
    @Override
    public IBinder onBind(Intent intent){
        return null;
    }
}
3)获取Activity中的返回数据

①打开Activity——startActivityForResult()

②设置返回数据——setResult()

③得到返回值——重写onActivityResult()

4)关于Intent对象

①激活Intent对象常用——Activity、Service和BroadcastReceiver。

②Service——在后台长时间运行操作且不提供用户界面的组件

5)ADT插件的四个文件夹

①drawable-xhdpi——超高清分辨率图片

②drawable-hdpi——高分辨率图片

③drawable-mdpi——中分辨率图片

④drawable-ldpi——低分辨率图片

6)SQLiteDataBase

①insert()插入数据

②update()更新数据

③query()查询数据

④delete()删除数据

7)Activity退出说明

Back键或者finish()方法,退出当activity,实际调用了onDestroy()方式

8)如何获取user
Intent intent=getIntent();
Bundle bundle=intent.getExtras();
String user =bundle.getString("user")
9)文本框与编辑框

①android:autoLink——超链接

②android:inputType——密码域

10)获取WebView,且添加指定URL
WebView webView=(WebView)findViewById(R.id.webView1);
webView.loadUrl("http://127.0.0.1:8080/bbs/");
二、简答题
1)SurfaceView类的作用及常用的场合:

说明:

surface类是一种特殊的视图,它拥有独立的绘图表面,即它不与其宿主窗口共享同一个绘图表面。由于拥有独立的绘图表面,因此SurfaceView的UI就可以在独立的线程中进行绘制,不会占用主线程资源。所以它更适合性能比较高的场合。

总结:

①surface类是一种特殊的视图,独立于主窗口

②SurfaceView的UI独立的线程,不占主线程

③适合于性能比较高的场合

2)LayoutInflater类的主要作用及工作原理:

该类可以从上下文环境获取一个局部填充器,利用它把xml布局文件转化为View对象。然后再将此View对象放入主界面的LinearLayout中。LayoutInflater类用inflate()方法加载xml布局文件。

3)Fragment对象的工作原理,以及对Activity之间的关系

①将应用程序拆解为多个部分,使各个部分灵活组合,以使用不同分辨率的手机和平板设备。

②将Activity代码和界面“切割”,分成多个碎片,每一小块都是迷你的Activity。

③Fragment与Activity的关系:Activity是由多个Fragment组合而成。

4)Android 的四大基本组件与其作用

四大组件:Activity、BroadcastReceiver、ContentProvider和Service

Activity:android的最基本板块,提供可视化的用户界面,一个android项目有一个或多个activity。

BroadcastReceiver:广播接收器,专注于接收广播通知信息,且做出对应处理的组件。

ContentProvider:应用程序之间共享数据的一种接口机制,一共高级的数据共享方法,共享的数据可以在不知道数据来源、路径的情况下进行操作。

Service:没有可视化的用户界面,一段时间内在后台运行的程序。

5)Padding与Margins

padding:内边距,参考固定于当前位置,向上下左右进行移动。

margins:外部距,参考于其他的对象,向上下左右进行移动。

6)Looper、Handler、Message,以及MessageQueue的工作原理

Looper对象用来为一个线程开启一个消息循环,用来操作MessageQueue。默认情况下Android中新创建的线程是没有开启消息循环的。但是主线程除外,系统会自动为主线程创建Looper对象,开启消息循环。

消息处理类(Handler)允许发送和处理Message或Rannable对象到其所在线程的MessageQueue中。

消息类(Message)被存放在MessageQueue中,一个MessageQueue中可以包含多个Message对象。每个Message对象可以通过Message.obtain()方法或者Handler.obtainMessage()方法获得。

MessageQueue(消息队列),用于存放Message(消息),在MessageQueue中,存放的消息按照FIFO(先进先出)原则执行。

7)R.java和AndroidManifest.xml文件的作用:

R.java文件用来定义Android程序中所有资源的索引,在Java源文件中编写代码时,可以直接通过该索引访问各种资源。每个Android应用程序必须包含一个AndroidManifest.xml文件,它位于根目录中。它是整个Android应用的全局描述文件。在该文件内,需要标明应用的名称、使用图标、Activity和Service等信息,否则程序不能正常启动。

8)Android提供的线性布局、表格布局方式的特点:

线性布局(LinearLayout) :控件按照从上至下或从左至右的顺序排列成一行或一列. 另外Android的线性布局中的组件不会换行,当组件一个挨着一个排列到窗体的边缘后,剩下的组件将不会被显示出来。表格布局(TableLayout) :用创建行; 或直接向中添加UI组件,该组件独占一行。 往行中每添加一个组件,表格会自动增加一列。

9)什么是Intent,其作用为:

Intent(意图)是一个对象,它是一个被动的数据结构保存一个将要执行操作的抽象描述,或在广播的情况下,通常是某事已经发生并正在执行,开发人员通常使用该对象激活Activity、Service和BroadcastReceiver。Intent用于相同或者不同应用程序组件间的后期运行时绑定。

10)Android提供的相对布局、帧布局这两种常用界面布局方式的特点 :

在相对布局中,放入其中的组件是相对于兄弟组件,或者父容器的位置进行排列的,其特点是布局比较灵活。帧布局(FrameLayout) :每加入一个组件,都会创建一个空白的区域,称之为帧。 这些帧会根据gravity属性自动对齐; 默认从屏幕左上角(0,0)坐标点开始布局,多个组件重叠,后面的覆盖前面的。

三、编程题
1)Android网络应用程序

实现功能:使用HttpClient和HttpGet对象完成一个Android网络应用程序,连接地址为:http://www.weather.com.cn/data/list3/city.xml, 后通过HttpResponse对象将所获得的返回内容打印在日志界面中。

HttpClient client=new DefaultHttpClient();
	HttpGet get=new HttpGet("http://www.weather.com.cn/data/list3/city.xml ");
	try{
		HttpResponse response=client.execute(get);
		if(response.getStatusLine().getStatusCode()==200){
			HttpEntity entity=response.getEntity();
			String content=EntityUtils.toString(entity,"UTF-8");
			Log.i("rss", content);
	}catch(Exception e){
			e.printStackTrace();
}
2)Android连接数据库

实现功能:使用Android数据库对象db(假设已存在,不需编写创建该对象的代码)向数据库的tb_student表中添加一条记录,具体值如下:

sno:12;sname:张三;age:23;address:福州

ContentValues values=new ContentValues();
values.put("sno ", 12);
values.put("sname ", "张三");
values.put("age ", 23);
values.put("address ", "福州");
db.insert("tb_student",null ,values);
3)按钮功能绑定

实现功能:

(1)、通过findViewById方法获得界面上的id为submit的Button按钮对象

(2)、为submit按钮对象添加单击事件监听器,使得点击该按钮时,创建一个显示的intent对象,通过该intent对象实现:切换当前界面MainActivity到第二个界面DetailActivity中去

Button submit= (Button) findViewById(R.id.submit);
submit.setOnClickListener(new View.OnClickListener() {
	@Override
	public void onClick(View v) {
		Intent intent = 
new Intent (MainActivity.this, DetailActivity.class);
		startActivity(intent);
	}
});
4)EditText功能使用

实现功能:

(1)、通过findViewById方法获得界面上的id为txtLogin的EditText输入框和btnLogin按钮对象

(2)、为btnLogin按钮对象添加单击事件监听器,实现功能:获取用户在txtLogin输入框中输入的内容,判断其值是否为“123”,若是则将该内容打印在日志中,若不是则在日志中打印“输入错误!”

EditText txtlogin = (EditText) findViewById(R.id.txtLogin);
Button btnlogin = (Button) findViewById(R.id.btnLogin);			btnlogin.setOnClickListener(new OnClickListener() {
	@Override
	public void onClick(View v) {
		String pwd = txtlogin.getText().toString();
       if(pwd.equals("123"))
		Log.i("MainActivity",pwd);	
       else
       	Log.i("MainActivity","输入错误!");	
	}
});
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
android开发期末大作业(项目源码,任务书,实验大报告,apk文件) 大作业的要求和内容:(包括题目选择范围、技术要求、递交时间、考核方法等) 一、实验项目名称 Android手机应用开发课程大作业 二、实验目的 1.通过本课程设计的实践及其前后的准备与总结,复习、领会、巩固和运用课堂上所学的Android手机应用开发知识。 2.为学生综合应用本专业所学习的多门课程知识(例如,软件工程、数据库、Java语言、Java Web开发等)创造实践机会。为学生提供主动学习、积极探索与大胆创新的机会。 3.掌握Android手机应用设计的方法与技巧。 三、实验内容及要求 1、设计内容 题目、设计内容自拟,工作量适中,要求学生应用课程所学知识,采用JAVA语言和Android手机应用开发技术实现一个完整的系统。 ①完成大作业报告。 ②实现各系统功能,并完成调试运行。 2、主要技术 采用Java语言并不仅限于Java语言实现系统。 开发环境与工具:Android Studio 3.2以上版本; 操作系统:Win7/Win10或其他; 4、设计成果: 材料上交:电子文档(大作业任务书+大作业报告+源代码,电子稿请刻在光盘上)、打印稿(大作业任务书+大作业报告)。 四、成绩评定: 考核标准包括: 1、选题的工作量,难度和新颖程度 2、系统架构设计是否良好,运行过程是否报错 3、界面设计的合理性和美观程度 4、基本功能的实现 分值60 (包括布局、组件、Activity、Intent等使用) 数据存储的使用 分值10 网络功能 分值10 Service、ContentProvider或BroadCastReceiver等的使用 分值10 附加分: 图形图像处理、多媒体处理等 分值10 5、考核方式为面对面答辩,在课程的后两周内集中进行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值