教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> > 面试> ANDROID面试题

ANDROID面试题

上传者:陈当阳
|
上传时间:2015-04-28
|
次下载

ANDROID面试题

1.Android四大组件

①activity 提供用户界面 用于与用户交互的组件,(活动窗体)它需要为保持各界面的状态,做很多持久化的事情,妥善管理生命周期以及一些跳转逻辑

②content Provider

为应用程序之间访问提供的接口的组件,实现数据共享,结构化数据集合,以表的形式对外提供数据,可以像数据库一样进行选择排序

③BroadCastReceiver (广播)

采用异步机制完成组件之间消息的传递,异步是指广播的发送方将消息标记后发出,不需要得到对方的回应,可以继续做自己的操作

默认情况下,所有的组件都有接收广播的能力,组件想要接收广播就注册与发送方一致的标记

包括普通广播和有序广播:

发送有序广播:sendOrderedBroadCast(...);

sendBroadCast();

有序广播可以进行应用程序之间传递消息,可以根据manifest文件中注册的优先级的高低判断接收的顺序。

实现过程:

创建一个类继承BroadCastReceiver,重写其中的onReceiver()方法,进行接收广播之后的操作。

广播 的生命周期:

④server(服务)

不需要提供用户界面,在后台运行服务于activity,执行长时间耗时操作的组件

开启服务

支付:

导入类库,跳转到支付页面。

短信验证:libs中导入jar包,通过手机号码获取短信验证码,跳转页面子线程睡眠实现倒计时并更新UI,验证码填充判断正确后执行下一步操作。

两个参数:1??.启动源;2??.启动目标

1:这种服务,被称为"开启的"服务.它适合做单一的任务,比如我们可以用它上传或者下载一个比较大的文件.

2:这种服务,不会给调用者返回信息.当某个组件开启这个服务之后,这个组件和该服务之间就没有关系了.

3:也就是说,当开启该服务的组件退出或者销毁后,这个服务仍然会在后台继续执行.

42.怎么实现service

(1)利用绑定activity的方法

步骤1:创建自己的service的方法继承service

onStartCommand()中启动线程

步骤2:在线程中发送广播

步骤3:在Manifest文件中注册service

步骤4:在activity中注册广播

步骤5:开启服务与关闭服务

2.Android中常用的五种布局

①线性布局 LinearLayout:

控件有两种排列方式,垂直和水平布局;android:layout_weight生效,它用于描述该子元素在剩余空间中占有的大小比例,android:layout_weight遵循数值越小,重要度越高的原则。

②相对布局 RelativeLayout:

以某一个元素为参照物来定位的布局方式RelativeLayout是Android五大布局结构中最灵活的一种布局结构,比较适合一些复杂界面的布局。

主要属性: 相对于某一个元素,相对于父元素

③表格布局

适用于N行N列的布局格式。一个TableLayout由许多TableRow组成,一个TableRow就代表TableLayout中的一行。

④绝对布局 AbsoluteLayout:

屏幕左上角为坐标原点(0,0),第一个0代表横坐标,向右移动此值增大,第二个0代表纵坐标,向下移动,此值增大。以android:layout_x和android:layout_y属性来确定控件的位置。在此布局中的子元素可以相互重叠。在实际开发中,通常不采用此布局格式,因为它的界面代码过于刚性,以至于有可能不能很好的适配各种终端。

⑤帧布局 FrameLayout:

所有东西一次都放在左上角,会重叠,适用于一些比较简单的布局

这五种布局元素可以嵌套使用,做出完美的界面

3.handler进制的原理:

答:android提供了handler和looper来满足线程间的通信。Handler先进先出原则。looper用来管理特定线程内对象之间的消息交换(message Exchange).

1)looper:一个线程可以产生一个looper对象,由它来管理此线程里的message queue(消息队列)

2)handler:你可以构造一个handler对象来与looper沟通,以便push新消息到messagequeue里;或者接收looper(从messagequeue里取出)所送来的消息。

3)messagequeue:用来存放线程放入的消息。

4)线程:UI thread 通常就是main thread,而android启动程序时会为它建立一个message queue.

· 事件分发:

· 1. return true:事件会分发给当前 View 并由当前view响应并消费

· 2.return false:事件分发分为两种情况:

如果当前 View 获取的事件直接来自 Activity,则会将事件返回给 Activity响应并消费;

如果当前 View 获取的事件直接来自 父view,则会将事件返回给 父view响应并消费;

3:默认的 :事件会自动的分发给当前 View 的 拦截方法。

事件拦截:

· 1:return True:进行拦截将拦截到的事件交由当前响应并消费;

2:return false,则表示将事件放行,当前 View 上的事件会被传递到子 View 上,再由子View响应并消费;

· 3:return 默认:会被拦截

事件响应::

1:return True:由当前view响应并消费:

2:return False:交由父view响应并消费

3:return 默认:false

侧滑:

1:创建侧滑对象

2:关联布局,设计打开模式

3:设置宽和高

4:把抽屉和activity关联

Handler机制:

Handler要在主线程中创建,创建完之后,这个Handler就会和主线程以及主线程的MessageQueue关联,当通过该Handler在子线程中发送Message的时候,该Message对象就会被发送到主线程的MessageQueue中。当主线程的MessageQueue有一个新的Message对象入队,监视这个MessageQueue的Looper,就会把新入队的Message对象从队列中取出,传递给Handler

国际化

在Android工程的res目录下,通过定义特殊的文件夹名称就可以实现多语言支持。比如我们的程序兼容简体中文、英文,在values文件夹中建立默认strings.xml,再建立values-zh-rCN文件夹。

在每个文件夹里放置一个strings.xml,strings.xml里是各种语言字符串。如果涉及到参数配置类xml文件夹名称也要改成xml-zh、xml。这样在android的系统中进行语言切换,所开发的程序也会跟着切换语言。

4.Android中的动画分类,其特点和区别

(1)属性动画(3.0引入)

根据动画指定的内容,时间等效果实现对当前的view属性设置

(2)控件动画(view)

不会对view当前的属性设置发生改动

①补间动画(Tween)

淡入淡出、旋转、缩放、平移,透明,

②帧动画(Fram)

根据顺序播放排列好的图片

Android的json解析方式:

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注视频

小学英语单词
冀教版小学数学二年级下册第二单元《有余数除法的竖式计算》
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,辽宁省
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,湖北省
冀教版小学数学二年级下册第二单元《有余数除法的简单应用》
六年级英语下册上海牛津版教材讲解 U1单词
沪教版八年级下次数学练习册21.4(2)无理方程P19
第19课 我喜欢的鸟_第一课时(二等奖)(人美杨永善版二年级下册)_T644386
人教版历史八年级下册第一课《中华人民共和国成立》
北师大版小学数学四年级下册第15课小数乘小数一
沪教版八年级下册数学练习册21.3(3)分式方程P17
19 爱护鸟类_第一课时(二等奖)(桂美版二年级下册)_T3763925
化学九年级下册全册同步 人教版 第22集 酸和碱的中和反应(一)
沪教版牛津小学英语(深圳用) 四年级下册 Unit 4
沪教版牛津小学英语(深圳用) 四年级下册 Unit 3
《空中课堂》二年级下册 数学第一单元第1课时
外研版英语七年级下册module3 unit2第一课时
沪教版八年级下册数学练习册一次函数复习题B组(P11)
外研版英语三起6年级下册(14版)Module3 Unit1
冀教版英语三年级下册第二课
8.对剪花样_第一课时(二等奖)(冀美版二年级上册)_T515402
外研版英语三起5年级下册(14版)Module3 Unit1
第12章 圆锥曲线_12.7 抛物线的标准方程_第一课时(特等奖)(沪教版高二下册)_T274713
沪教版八年级下册数学练习册21.3(2)分式方程P15
七年级英语下册 上海牛津版 Unit9
冀教版小学数学二年级下册第二单元《余数和除数的关系》
二年级下册数学第二课
第五单元 民族艺术的瑰宝_16. 形形色色的民族乐器_第一课时(岭南版六年级上册)_T1406126
飞翔英语—冀教版(三起)英语三年级下册Lesson 2 Cats and Dogs
8 随形想象_第一课时(二等奖)(沪教版二年级上册)_T3786594