![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android面试总结
文章平均质量分 62
braddoris
热爱程序设计!软件开发!
展开
-
Android布局属性
1.首先来看看android:layout_gravity和android:gravity的使用区别。android:gravity:这个是针对控件里的元素来说的,用来控制元素在该控件里的显示位置。例如,在一个Button按钮控件中设置如下两个属性,android:gravity="left"和android:text="提交",这时Button上的文字“提交”将会位于Button的左转载 2015-11-04 15:58:55 · 910 阅读 · 0 评论 -
Android屏幕适配
一、基本概念:1、屏幕大小:屏幕对角线的长度,单位为英寸。1英寸=2.54厘米 比如常见的屏幕尺寸有2.4、2.8、3.5、3.7、4.2、5.0、5.5、6.0等2、屏幕分辩率:横纵方向上像素点个数 比如:1920*10803、屏幕的像素密度:每英寸上像素的个数,单位是dpi(或则ppi(Pixels per inch)),即“dot per inch”的缩写原创 2015-11-01 23:33:45 · 682 阅读 · 0 评论 -
Android内存优化(4)
Android的内存优化是性能优化中很重要的一部分,而避免OOM又是内存优化中比较核心的一点。这是一篇关于内存优化中如何避免OOM的总结性概要文章,内容大多都是和OOM有关的实践总结概要。理解错误或是偏差的地方,还请多包涵指正,谢谢!(一)Android的内存管理机制Google在Android的官网上有这样一篇文章,初步介绍了Android是如何管理应用的进程与内存分配:http转载 2015-10-31 22:39:38 · 1128 阅读 · 0 评论 -
Activity的启动模式
launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里。这里简单介绍一下task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建一个与之对应的task。Activity一共有以下四种lau转载 2015-11-01 20:29:25 · 394 阅读 · 0 评论 -
Activity的启动模式与startActivityForResult的关系
Activity的启动方式分为四种,分别为standard,singleTop,singleTask,singleInstancestartActivityForResult方法能够起效:standard和singleTopstartActivityForResult方法不能够起效:singleTask和singleInstance1、只要将被启动的Activity属性设置为singl原创 2015-11-01 20:37:02 · 2443 阅读 · 0 评论 -
设计模式之观察者
观察者模式 观察者模式 Observer 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。 这个主题对象在状态上发生变化时,会通知所有观察者对象,让它们能够自动更新自己。 观察者模式的组成 抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者。抽象主题提供一个接口转载 2015-11-01 19:25:11 · 417 阅读 · 0 评论 -
Android 通过 Intent 传递类对象
Android 开发笔记——通过 Intent 传递类对象Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象。要求被传递的对象必须实现上述2种接口中的一种才能通过Intent直接传递。Intent中传递这2种对象的方法:Bundle.putSerializabl原创 2015-10-31 19:00:24 · 392 阅读 · 0 评论 -
Android 内存优化(1)
不少人认为JAVA程序,因为有垃圾回收机制,应该没有内存泄露。其实如果我们一个程序中,已经不再使用某个对象,但是因为仍然有引用指向它,垃圾回收器就无法回收它,当然该对象占用的内存就无法被使用,这就造成了内存泄露。如果我们的java运行很久,而这种内存泄露不断的发生,最后就没内存可用了。当然java的,内存泄漏和C/C++是不一样的。如果java程序完全结束后,它所有的对象就都不可达了,系统就可以对原创 2015-10-31 22:22:54 · 511 阅读 · 0 评论 -
Android内存优化(2)
android手机给应用分配的内存通常是8兆左右,如果处理内存处理不当很容易造成OutOfMemoryError,我们的产品出现最多的错误也是OutOfMemoryError的异常, 在解决这个异常时在网上发现很多关于OutOfMemoryError的原因的介绍。 OutOfMemoryError主要由以下几种情况造成: 1.数据库的cursor没有关闭。 操作Sqlite数据库转载 2015-10-31 22:28:37 · 768 阅读 · 0 评论 -
Android性能分析工具
1、systrace:在Android4.1以后才出现的工具,采用python脚本实现,可以生成html格式的报告,屏幕渲染时间为16ms,如果超过10ms的话就会产生卡顿。它主要由3部分组成:内核部分:Systrace利用了Linux Kernel中的ftrace功能。所以,如果要使用Systrace的话,必须开启kernel中和ftrace相关的模块。数据采集部分:Andr原创 2015-10-31 21:34:26 · 588 阅读 · 0 评论 -
Android中布局优化
Android开发中的布局很重要吗?那是当然。一切的显示样式都是由这个布局决定的,你说能不重要吗。要实现一个好的布局,不只是实现了、显示出来就完了,不管层次,堆砌代码也可以实现功能,但是这显然违背了Android布局设计的原则。可能你会说,Android布局设计哪有什么原则,我可以明确告诉你,当然有,只要有利于提高最终效果的方法、意识,我们都可以把它提升为原则。在Android布局设计中,这个最终转载 2015-10-31 19:47:21 · 477 阅读 · 0 评论 -
Android自定义View(4)
view的刷新三种得到LinearInflater的方法a. LayoutInflater inflater = getLayoutInflater();b. LayoutInflater localinflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE转载 2015-11-04 17:04:19 · 946 阅读 · 0 评论 -
Android自定义View(3)
定义组合控件目标:实现textview和ImageButton组合,可以通过Xml设置自定义控件的属性。 通过代码或者通过xml设置自定义控件的属性1.控件布局:以Linearlayout为根布局,一个TextView,一个ImageButton。 Xml代码[html] view plaincopy ?xml versi转载 2015-11-04 17:02:22 · 778 阅读 · 0 评论 -
Android自定义view(5)
很多的Android入门程序猿来说对于Android自定义View,可能都是比较恐惧的,但是这又是高手进阶的必经之路,所有准备在自定义View上面花一些功夫,多写一些文章。先总结下自定义View的步骤:1、自定义View的属性2、在View的构造方法中获得我们自定义的属性[ 3、重写onMesure ]4、重写onDraw我把3用[]标出了,所以说3不一定是必须的,当然了大部分转载 2015-11-04 17:07:41 · 458 阅读 · 0 评论 -
Android自定义view(2)
1. reference:参考某一资源ID。 (1)属性定义: background" format = "reference" /> (2)属性使用: android:layout转载 2015-11-04 16:57:55 · 1089 阅读 · 0 评论 -
Android自定义View(1)
在xml里建立属性,然后java代码里用typedArray获得这些属性,得到属性后,利用属性做一些事.例:得到xml里的color,赋给paint.1.在res/values/下新建attrs.xml[html] view plaincopyxml version="1.0" encoding="utf-8"?> resources> declare-转载 2015-11-04 16:55:08 · 511 阅读 · 0 评论 -
设计模式之单例模式
Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复杂,譬如涉及到DCL双锁检测(double checked locking)的讨论、涉及到多个类加载器(ClassLoader)协同时、涉及到跨JVM(集群、远程EJB等)时、涉及到单转载 2015-11-01 20:06:47 · 409 阅读 · 0 评论