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可以作为线程池并行处理任务