收藏 分享(赏)

Android期末考试复习.doc

上传人:精品资料 文档编号:10624112 上传时间:2019-12-09 格式:DOC 页数:15 大小:72.66KB
下载 相关 举报
Android期末考试复习.doc_第1页
第1页 / 共15页
Android期末考试复习.doc_第2页
第2页 / 共15页
Android期末考试复习.doc_第3页
第3页 / 共15页
Android期末考试复习.doc_第4页
第4页 / 共15页
Android期末考试复习.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、1 SharedPreferences 的使用 : 能够使用 SharedPreferences 进行存储数据(数据来源可多种,比如来源于输入文本),能够读出存储数据,并显示(比如显示在 textView 中)存储时,看清楚指定的存储文件名、看清要求MainActivity.java:package com.example.sharedpre;import android.os.Bundle;import android.app.Activity;import android.content.SharedPreferences;import android.view.Menu;import a

2、ndroid.view.View;import android.widget.TextView;import android.widget.Toast;public class MainActivity extends Activity private TextView tv;String s;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.main);tv=(TextView)findViewById(R.

3、id.textView1);public void onClick(View v)SharedPreferences sp=this.getPreferences(MODE_PRIVATE);switch(v.getId()case R.id.button1:sp.edit().putString(“hello“, “Mr.Liu“).commit();Toast.makeText(MainActivity.this, “Write Data is Successed!“, 1000).show();break;case R.id.button2:s=sp.getString(“hello“,

4、 “);tv.setText(s);break;数据存储位置:DDMSFile Exploredatadata(package名称)Shared_prefsMainActivity.xml2、OptionMenu,XML 的建立,onCreateOptionsMenu()、onOptionsItemSelected()的方法使用Menumain.xml:String.xml:AmericanChinaEnglandChileChad#ff006e#6eff00#006effMainActivity.java:/自定义视图:ListView lv=null;Overrideprotected v

5、oid onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);lv=new ListView(this);ArrayAdapteradapter=new ArrayAdapter(this,android.R.layout.simple_list_item_1,getResources().getStringArray(R.array.countrys);lv.setAdapter(adapter);setContentView(lv);/ onCreateOptionsMenu:Overridepubli

6、c boolean onCreateOptionsMenu(Menu menu) / TODO Auto-generated method stubMenuInflater in=new MenuInflater(this);in.inflate(R.menu.main, menu);return super.onCreateOptionsMenu(menu);/ onOptionsItemSelected:Overridepublic boolean onOptionsItemSelected(MenuItem item) / TODO Auto-generated method stubs

7、witch(item.getItemId()case R.id.item1:lv.setBackgroundResource(R.color.color1);break;case R.id.item2:lv.setBackgroundResource(R.color.color2);break;case R.id.item3:lv.setBackgroundResource(R.color.color3);break;return super.onOptionsItemSelected(item);3、意图有(直接)意图和间接意图之分。4、(Canvas)类包含一组矢量绘图方法,可以完成直线、

8、曲线、等路径的绘制。5、Android 项目调用 MediaPlayer 类中的 (start )方法播放音乐。6、Android 项目中,用完数据库后,调用(close)方法关闭数据库。7、Bitmap 类的构造函数是私有的,外面并不能实例化,需要通过( BitmapFactory)类的一些方法来实现。8、MediaPlayer 主要用于播放音频,它与(SurfaceView)视图控件结合可以实现视频的输出。9、进行图像采集或视频录制时,常使用(MediaRecorder)类的一些方法和属性。10、ListView 的使用1ListVeiw 用来展示列表的 View。2适配器 用来把数据映射

9、到 ListView 上的中介。3数据 具体的将被映射的字符串,图片,或者基本组件。根据列表的适配器类型,列表分为三种,ArrayAdapter,SimpleAdapter 和 SimpleCursorAdapter其中以 ArrayAdapter 最为简单,只能展示一行字。SimpleAdapter 有最好的扩充性,可以自定义出各种效果。SimpleCursorAdapter 可以认为是 SimpleAdapter 对数据库的简单结合,可以方面的把数据库的内容以列表的形式展示出来。ArrayAdapter:/自定义字符串数组:String books=new String“”,“”,“”,1

10、1、Paint、Canvas 类的使用,能够自己定义画笔颜色,定义画布颜色,在画布上绘制文字和直线12、表格布局中,两个重要的标签是 Tablelayout 和()。Activity 生命周期:onCreate(Bundle):首先创建时调用该方法,执行一次性的初始化工作。其后调用 onStart()或 onRestart()方法。 onStart():当 Activity 对用户即将可见时调用。onResume():用户可以开始与活动进行交互时会调用该方法。onPause():活动将进入后台时会运行该方法。onStop():在一段时间内不需要某个活动时,调用该方法。onRestart():将

11、已处于停止状态的活动重新显示给用户。onDestroy():销毁活动前调用该方法。如果内存不足,系统会终止进程,可能不需要调用该方法。onSaveInstanceState(Bundle):调用该方法让活动可以保存每个实例的状态。onRestoreInstanceState(Bundle):使用 onSaveInstanceState()方法保存的状态来重新初始化某个活动时调用该方法。自定义视图的三种方法:(1)在主 Activity 中直接重写 View 类(2)单独定义 View 类,在主 Activity 中引用:在 shdoku 中需要调用 Game 的界面使使用的就是单独定义,在 G

12、ame 活动用引用。(3)单独定义 View 类,在布局文件中引用布局方式:线性布局:LinearLayout相对布局:RelativeLayout绝对布局:AbsoluteLayout帧布局:FrameLayout列表布局:ListView表格布局:TableLayout简答题1. 简述 Android 平台的特征有哪些。答:开放性、挣脱运行商的束缚、丰富的硬件选择、无缝结合的 Google 应用2.简述 Android 平台开发环境搭建的步骤。答:安装 Java JDK,安装 Eclipse,安装 Android SDK,搭建 Eclipse 集成开发环境(IDE)、配置 ADT(Andr

13、oid Development Tools)、创建 AVD(Android Virtual Device)3.简述 Android 系统架构从高到低的几个层次。答:四个层次,分别是:应用程序层(Applications)、应用程序框架层(Application Framework)、各种库(Libraries)和运行环境(Runtime)、Linux 内核(Linux kernel)4.应用程序的基本组件有哪些?答:Activity、Service、Content Provider、BroadCast Receiver5.Android 根据应用程序的组件以及组件当前运行状态将所有的进程按重要

14、性程度从高到低划分为几个?答:可以划分为 5 个:前台进程、可见进程、服务进程、后台进程、空进程6.随着 Activity 的创建和销毁,可能会经历哪四种状态?答:活动状态:当前的 Activity,位于 Activity 栈顶,用户可见,并且可以获得焦点 暂停状态:失去焦点的 Activity,依然可见,即使在内存低的情况下,也不会被系统杀死停止状态:该 Activity 被其他 Activity 所覆盖,不可见,但是仍然保存所有的状态和信息。当内存低的情况下,它将要被系统杀死销毁状态:该 Activity 结束,或 Activity 所在的 Dalvik 进程结束7.使用资源包括哪几种方法

15、?答:在代码里使用资源类;在代码里调用资源类并实例化;从其他资源类里引用8.AndroidManifest.xml 主要包含哪些功能?答:说明 application 的 java 数据包,数据包名是 application 的唯一标识描述 application 的 component说明 application 的 component 运行在那个 process 下声明 application 的权限,用以访问受保护的 API,以及与其他 application 进行交互声明 application 的其他必备权限,用以与 component 进行交互列举 application 运行时所

16、需要的配置信息,这些声明信息只有在程序开发和测试时存在,在发布前被删除声明 application 所需要的 Android API 的最低级版本列举 application 所需要链接的库9.应用程序的界面布局主要有哪些?答:线性布局(LinearLayout)、表格布局(TableLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)10.Android 应用程序的菜单有哪几种?答:Android 应用程序的菜单有 3 种:选择菜单(Option Menu)、上下文菜单(Context Menu)、子菜单(Sub Menu)11.在界面上创建一个 Spi

17、nner(含数据选项)的步骤。答:1、在布局文件中添加标记,并为其指定 android:entries 属性2、编写用于指定列表项的数组资源文件,并将其保存在 res/values 目录中,在该文件中添加一个字符串组12.现行布局中属性 orientation 的作用是什么?答:用于设置布局管理器内组件的排列方式,其可选的值为 horizontal 和 vertical,默认值为 vertical13.Android 中实现事件处理的步骤?答:(1)将事件监听器注册到事件源(2)触发事件源上的事件(3)生成时间对象(4)触发事件监听器,事件被作为参数传入事件处理器(5)调用事件处理器做出响应1

18、4.简述 Android 平台提供了那些数据存储方法。答:Preferences、File、SQLite、ContentProvider,网络15.简述 Android 模拟器中应用程序使用 SD 卡的步骤。答:(1)调用 Environment 的 getExternalStorageState()方法判断手机上是否插入了 SD 卡, 并且应用程序具有读写 SD 卡的权限(2)调用 Environment 的 getExternalDirectory()方法来获取外部存储器,也就是 SD 卡的目录(3)使用 FileOutputStream、FileInputStream、FileReade

19、r 和 FileWriter 来读写 SD 卡16.简述创建或打开一个 SQLite 数据库的方法有哪些?答:openDataBase、openOrCreateDataBase17.使用 ContentProvider 来实现数据共享,都涉及到哪些辅助类。答:onCreate()、insert()、delete()、update()、query()、getType()18.开发 ContentProvider 的步骤答:(1)开发一个 ContentProvider 子类,并实现增、删、改、查等方法(2)在 AndroidManifest.xml 里面注册该 ContentProvider19

20、.startService()和 bindService()启动服务的区别:服务不能自己运行,需要通过调用 startService()或 bindService()方法启动服务。这两个方法都可以启动 Service,但是它们的使用场合有所不同。1.使用 startService()方法启用服务,调用者与服务之间没有关连,即使调用者退出了,服务仍然运行。使用 bindService()方法启用服务,调用者与服务绑定在了一起,调用者一旦退出,服务也就终止。2.采用 startService()方法启动服务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用 onStart()

21、方法。如果调用 startService()方法前服务已经被创建,多次调用startService()方法并不会导致多次创建服务,但会导致多次调用 onStart()方法。采用 startService()方法启动的服务,只能调用 Context.stopService()方法结束服务,服务结束时会调用 onDestroy()方法。3.bindService()方法启动服务,在服务未被创建时,系统会先调用服务的 onCreate()方法,接着调用onBind()方法。这个时候调用者和服务绑定在一起,调用者退出了,系统就会先调用服务的 onUnbind()方法,接着调用 onDestroy()方

22、法。如果调用 bindService()方法前服务已经被绑定,多次调用bindService()方法并不会导致多次创建服务及绑定(也就是说 onCreate()和 onBind()方法并不会被多次调用)。如果调用者希望与正在绑定的服务解除绑定,可以调用 unbindService()方法,调用该方法也会导致系统调用服务的 onUnbind()onDestroy()方法。20. 请解释下在单线程模型中 Message、Handler、MessageQueue、Looper 之间的关系。Handler 简介:一个 Handler 允许你发送和处理 Message 和 Runable 对象,这些对象

23、和一个线程的MessageQueue 相关联。每一个线程实例和一个单独的线程以及该线程的 MessageQueue 相关联。当你创建一个新的 Handler 时,它就和创建它的线程绑定在一起了。这里,线程我们也可以理解为线程的MessageQueue。从这一点上来看,Handler 把 Message 和 Runable 对象传递给 MessageQueue,而且在这些对象离开 MessageQueue 时,Handler 负责执行他们。Handler 有两个主要的用途:(1)确定在将来的某个时间点执行一个或者一些 Message 和 Runnable 对象。(2)在其他线程(不是 Handl

24、er 绑定线程)中排入一些要执行的动作21. handler 机制的原理andriod 提供了 Handler 和 Looper 来满足线程间的通信。Handler 先进先出原则。Looper 类用来管理特定线程内对象之间的消息交换(MessageExchange)。1)Looper: 一个线程可以产生一个 Looper 对象,由它来管理此线程里的MessageQueue(消息队列)。2)Handler: 你可以构造 Handler 对象来与 Looper 沟通,以便 push 新消息到MessageQueue 里;或者接收 Looper 从 Message Queue 取出)所送来的消息。3

25、) Message Queue(消息队列):用来存放线程放入的消息。4)线程:UIthread 通常就是 main thread,而 Android 启动程序时会替它建立一个 MessageQueue。一、 选择题1 android 虚拟设备的缩写是(AVD)2 Android SDK 目前支持的操作系统(DOS)3 Android 开发工具插件(ADT)没有提供的开发功能(自动更新)4 Android SDK 提供一些开发工具可以把应用软件打包成 Android 格式文件(APK)5 Android 当中基本的所有的 UI 都是由(view)或者其子类实现的6 以下不是 Android 中调

26、试项目的正确步骤(测试用例)7 下列不是 Activity 的生命周期方法之一的是(OnResume)8 以下可以做 EditText 编辑框的提示信息是(adroid:hint)9 以下不是 Activity 启动的方法是(gotoActivity)10 以下不是手机操作系统的是(windows vista)二、 填空题1 Android 平台由操作系统,中间件,用户界面和应用软件组成的。2 Android 平台提供了 2D,3D 的图形支持,数据库支持 SQLite,并且集成了浏览器3 目前已知的可以用来搭建 Android 开发环境的系统有 windows,Linux,Mac 等 4 开

27、发中推荐使用的 IDE 开发组合为 IDE,eclipse,ADI 来开发5 Android SDK 主要以 java 语言为基础6 创建工程时需要填写的信息名称有工程名,包的名字,Activity 的名字还有应用的名字7 Android.jar 是一个标准的压缩包,其内容包含的是编译后的 class,包含了全部的 API三、 简答题1 Android SDK 中 API 的包结构的划分?至少五个android.util,android.os,android.content,android.view,android.graphics,android.text 2 Android 软件框架结构自

28、上而下可分为哪些层?应用程序(Application)、应用程序框架(Application Framework)、各种库(Libraries)和Android 运行环境(RunTime)、操作系统层(OS)3 Android 应用程序的 4 大组件是什么?Activity、Broadcast Intent Receiver、Service、Content Provider4 Android 应用工程文件结构有哪些?源文件(包含 Activity),R.java 文件,Android Library,assets 目录 res 目录,drawble 目录,layout 目录,values 目录

29、,AndroidManifest.xml5 Android 开发应用程序最有可能使用到的应用框架部分是哪些?一组 View(UI)组件,Content Providers,Resource Manger,Notification Manger,Activiy Manger6 Android 底层库包含哪些?系统 C 库,媒体库,Surface Manager,LibWebCore,SGL四、 编程1 实现点击一个按钮,结束当前 Activity 并将需要返回的数据放置并关闭当前窗体请编写核心代码Bundle bundle = new Bundle ( );Bundle.putString(“s

30、tore”,”数据来自 Activity1”) ;Intent mIntent = new Intent( );mIntent.putExtras(bundle);setResult(RESULT_OK, mIntent);finish( );2 手动绑定列表控件的核心代码listdata;listView listview = null;data = new ArrayList( );Mapitem;item = new HashMap( );item.put(“姓名” , “张三小朋友”);item.put(“性别” , “男”);data.add(item);item = new Has

31、hMap( );item.put(“姓名” , “王五同学”);item.put(“性别” , “男”);data.add(item);listView = new ListView(this);SimpleAdapter adapter = new SimpleAdapter(this,data,R.layout.listitem, new String “姓名”,”性别”, new int R.id.mview1, R.id.mview2 ) ;listView.setAdapter(adapter);setContentView(listView);实验例题:SharePreferenc

32、epackage edu.lesson.sharedpreferences;import android.app.Activity;import android.content.SharedPreferences;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;public class MainActivity extends Activity implements View.OnClickListener private

33、static final String FILENAME = “huanghuai“;private EditText username = null,userage = null;private Button submit = null;private Button show = null;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);username = (EditText

34、) findViewById(R.id.username);userage = (EditText) findViewById(R.id.userage);submit=(Button)findViewById(R.id.submit);show=(Button)findViewById(R.id.show);submit.setOnClickListener(this);show.setOnClickListener(this);Overridepublic void onClick(View v) SharedPreferences share = super.getSharedPrefe

35、rences(FILENAME,Activity.MODE_PRIVATE);switch (v.getId() case R.id.submit:SharedPreferences.Editor editor = share.edit();String name = username.getText().toString().trim();String age = userage.getText().toString().trim();editor.putString(“name“, name);editor.putInt(“age“, Integer.parseInt(age);mit()

36、;break;case R.id.show:username.setText(share.getString(“name“, “没有 姓名信息“);userage.setText(String.valueOf(share.getInt(“age“, 0);break;default:break;OptionMenupackage edu.test.optionmenu;import android.app.Activity;import android.content.res.Resources;import android.graphics.drawable.Drawable;import

37、android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.ImageView;public class MainActivity extends Activity private ImageView imageView = null;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.

38、activity_main);imageView = (ImageView) findViewById(R.id.img);Overridepublic boolean onCreateOptionsMenu(Menu menu) getMenuInflater().inflate(R.menu.main, menu);return true;Overridepublic boolean onOptionsItemSelected(MenuItem item) int itemId = item.getItemId();if (itemId = R.id.changebg) Resources

39、 resources = getBaseContext().getResources();Drawable btnDrawable = resources.getDrawable(R.drawable.bg);imageView.setImageDrawable(btnDrawable);return super.onOptionsItemSelected(item);ListViewpackage edu.lesson.listview;import java.util.ArrayList;import java.util.List;import android.app.Activity;i

40、mport android.os.Bundle;import android.view.Menu;import android.view.View;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ArrayAdapter;import android.widget.ListView;public class MainActivity extends Activity private ListView listView = n

41、ull;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);listView = new ListView(this);listView.setAdapter(new ArrayAdapter(this,android.R.layout.simple_expandable_list_item_1,getData();listView.setOnItemClickListener(new ItemClickEvent();setContentView(listV

42、iew);Overridepublic boolean onCreateOptionsMenu(Menu menu) getMenuInflater().inflate(R.menu.main, menu);return true;private List getData() List data = new ArrayList();data.add(“Test data1“);data.add(“Test data2“);data.add(“Test data3“);data.add(“Test data4“);return data;protected class ItemClickEven

43、t implements OnItemClickListenerOverridepublic void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) System.out.println(arg2);菜单的创建Mainactivity.javapackage com.example.menutest;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.MenuInflater

44、;import android.view.MenuItem;import android.widget.ArrayAdapter;import android.widget.ListView;public class MainActivity extends Activity ListView lv=null;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);lv=new ListView(this);ArrayAdapteradapter=new Arra

45、yAdapter(this,android.R.layout.simple_list_item_1,getResources().getStringArray(R.array.countrys);lv.setAdapter(adapter);setContentView(lv);Overridepublic boolean onCreateOptionsMenu(Menu menu) / TODO Auto-generated method stubMenuInflater in=new MenuInflater(this);in.inflate(R.menu.main, menu);retu

46、rn super.onCreateOptionsMenu(menu);Overridepublic boolean onOptionsItemSelected(MenuItem item) / TODO Auto-generated method stubswitch(item.getItemId()case R.id.item1:lv.setBackgroundResource(R.color.color1);break;case R.id.item2:lv.setBackgroundResource(R.color.color2);break;case R.id.item3:lv.setBackgroundResource(R.color.color3);break;return super.onOptionsItemSelected(item);Activity_main.xml

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报