欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android面试题目 - RecycleView如何优a化?如何自定义View?

程序员文章站 2022-05-18 14:27:39
1、recycleview如何优化?recycleview中要加载多种不同样式的item该怎么实现? 答:1、使用 viewholder复用布局 2、bitmap 优化 3、避免内存泄漏,可以使用...

1、recycleview如何优化?recycleview中要加载多种不同样式的item该怎么实现?

答:1、使用 viewholder复用布局

2、bitmap 优化

3、避免内存泄漏,可以使用 android profiler 或者 leakcanary来监测。

4、避免主线程中计算。如果有复杂计算,需要新创建进程。

2、android下解决滑动冲突的常见思路是什么?

答:相关的滑动,重写onintercepttouchevent,然后判断根据xy值,来决定是否要拦截当前操作。

3、如何自定义view

答:1、创建你的自定义类,让它继承view类,并重写构造方法。

2、重写ondraw()方法。

3、布局文件引用自定义view

4、android屏幕适配常用方法有那些?

1、图片适配 2、布局适配 3、代码适配 4、权重适配 5、尺寸适配 6、百分比适配

常用适配框架:鸿洋:android 屏幕适配方案

5、如何理解context

context:包含上下文信息的一个参数。android中的context分3种,application context,activity context,service context.它描述的是一个应用程序环境的信息,通过它我们可以获取应用程序的资源和类,也包括一些应用级别操作,例如:启动一个activity,发送广播,接收intent信息等。

6、如何实现一个平移动画?

用到的方法是animation translateanimation = new translateanimation(float begin_x,float end_x,float begin_y,float end_y);参数分别代表开始时x的坐标,结束时x的坐标,开始时y的坐标,结束时y的坐标。

translateanimation.setduration(1500);//动画持续的时间为1.5s

translateanimation.startnow();//动画执行

7、fragment的概念是什么?fragment的生命周期是什么?

fragment是android honeycomb 3.0新增的概念,你可以将fragment类比为activity的一部分,它拥有自己的生命周期,接收自己的输入,你可以在activity运行的时加入或者移除fragment.

fragment的生命周期是:

1、onattach()、oncreate()、oncreateview()、onactivitycreated()

2、onstart()

3、onresume()

4、onpause()

5、onstop()

6、ondestroyview()、ondestroy()、ondetach()

8、activity有几种启动模式?分别是什么?

答:有四种启动模式,首先默认的启动模式是standard,就是每创建一个activity就会将其压入任务栈栈顶,不管是否存在;一种是singletop,就是如果任务栈栈顶刚好是要显示的activity,它就不会创建一个新的activity,如果不是,就会创建一个新的activity;一种是singletask,如果activity已经存在,不管是栈顶还是栈中,它就会把要创建的activity移到栈顶;一种是singleinstance,就是如果应用1创建了activity,这个应用2也想调用该activity,这个时候就不需要重新调用了。

9、android存储数据有哪几种方式?

1、sqlite方式存储

2、sharedpreference存储

3、文件file存储

4、contentprovice存储

5、网络存储,将数据放到网络云里面,然后通过网络进行访问。

10、android中线程操作实现有哪几种方式?

答:1、thread & asynctask 2、thread可以与loop和handler共同建立消息处理队列 3、asynctask可以作为线程池并行处理任务。