一.Android 动画分类 总的来说,Android动画可以分为两类,最初的传统动画和Android3.0 之后出现的属性动画: 传统动画又包括 帧动画(Frame Animation)和补间动画(Tweened Animation). 二.传统动画 帧动画 帧动画是最容易实现的一种动画,这种动画更多的依赖于完善的UI资源,他的原理就是将一张张单独的图片连贯的进行播放,从而在视觉上产生一种动画的效果:有点类似于某些软件制作gif动画的方式. 如上图中的京东加载动画,代码要做的事情就是把一幅幅的…
一.什么是Dalvik虚拟机 Dalvik是Google公司自己设计用于Android平台的Java虚拟机,它是Android平台的重要组成部分,支持dex格式(Dalvik Executable)的Java应用程序的运行.dex格式是专门为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统.Google对其进行了特定的优化,使得Dalvik具有高效.简洁.节省资源的特点.从Android系统架构图知,Dalvik虚拟机运行在Android的运行时库层. Dalvik作为面向Linu…
Activity mActivity =new Activity() 作为Android开发者,不知道你有没有思考过这个问题,Activity可以new吗?Android的应用程序开发采用JAVA语言,Activity本质上也是一个对象,那上面的写法有什么问题呢?估计很多人说不清道不明.Android程序不像Java程序一样,随便创建一个类,写个main()方法就能运行,Android应用模型是基于组件的应用设计模式,组件的运行要有一个完整的Android工程环境,在这个环境下,Activity…
在安卓系统中:当系统内存不足时,Android系统将根据进程的优先级选择杀死一些不太重要的进程,优先级低的先杀死.进程优先级从高到低如下. 前台进程 处于正在与用户交互的activity 与前台activity绑定的service 调用了startForeground()方法的service 正在执行oncreate(),onstart(),ondestroy方法的 service. 进程中包含正在执行onReceive()方法的BroadcastReceiver. 系统中的前台进程并不会很多,…
一.为什么Bitmap需要高效加载? 现在的高清大图,动辄就要好几M,而Android对单个应用所施加的内存限制,只有小几十M,如16M,这导致加载Bitmap的时候很容易出现内存溢出.如下异常信息,便是在开发中经常需要的: java.lang.OutofMemoryError:bitmap size exceeds VM budget 为了解决这个问题,就出现了Bitmap的高效加载策略.其实核心思想很简单.假设通过ImageView来显示图片,很多时候ImageView并没有原始图片的尺寸那…
一.使用 Intent Activity,Service,Receiver 都支持在 Intent 中传递 Bundle 数据,而 Bundle 实现了 Parcelable 接口,可以在不同的进程间进行传输. 在一个进程中启动了另一个进程的 Activity,Service 和 Receiver ,可以在 Bundle 中附加要传递的数据通过 Intent 发送出去. 二.使用文件共享 Windows 上,一个文件如果被加了排斥锁会导致其他线程无法对其进行访问,包括读和写:而 Android…
1.请说出Android SDK支持哪些方式显示富文本信息? 使用TextView组件可以显示富文本信息,如果要实现图文混排,需实现ImageGetter接口 使用WebView组件显示HTML页面 自定义View,覆盖onDraw方法,可以直接绘制富文本 TextView组件显示图像还可以使用ImageSpan对象 2.TextView组件如何显示图像? 使用<img>标签在TextView组件中显示图像,需要CharSequence配合 使用ImageSpan对象在TextView组件中显…
1.请写出调用系统拨号界面? Intent intent=new Intent(Intent.ACTION_DIAL,Uri.pase("tel:12345678910")); startActivity(intent); 添加权限:<uses-permission android:name="android.permission.CALL_PHONE"> 2.在Android系统中监听来电有几种方式? 法1:广播接收器 法2:TelephoneMana…
一. 定义 IntentService是Android里面的一个封装类,继承自四大组件之一的Service. 二.作用 处理异步请求,实现多线程 三. 工作流程 注意:若启动IntentService 多次,那么每个耗时操作则以队列的方式在 IntentService的onHandleIntent回调方法中依次执行,执行完自动结束. 四.实现步骤 步骤1:定义IntentService的子类:传入线程名称.复写onHandleIntent()方法 步骤2:在Manifest.xml中注册服务 步…
1.Android应用程序的资源是如何存储的,如何使用? res文件夹或者assets文件夹 res目录中的资源在R类中生成一个int变量,然后再布局文件中可以直接使用,在代码中,要getResources().getString(R.string...) assets目录中的文件必须使用文件名方式,getResources().getAssets().open("test.png") 2.res和assets目录的区别? res目录中的子目录名字有限制,而assets目录没有要求 访…