Android接口与架构 Android在设备的规格与驱动方面给了你很大的自由来实现。HAL层提供了一个标准的方式来打通Android系统层与硬件层。Android系统是开源的,所以你能够在接口和性能方面贡献自己的力量。 为了保证设备维持一个高水平的质量,并且提供一个持续稳定的用户体验,每个设备必须通过兼容性测试(CTS).CTS确保设备符合质量标准,用来保证app可靠的运行,并且有一个好的用户体验。如需了解更多,请看Compatiblity
起因 项目中要做一个下拉缩放图片的效果,搜索了下github上面,找到了两个方案。 https://github.com/Frank-Zhu/PullZoomView这个库本来做的还可以,不过有个缺陷就是,当scroolview滑动到底部,再向上拉动,会导致放大效果不连续,需要重新释放,再次下拉,这对于追求细节的我来说,不可忍受。看了半天他的代码,感觉他的实现方式很难修改为我想要的效果,后来就放弃了。 https://github.com/Gnod/ParallaxListView
创建自定义view 一个设计良好的的自定义view应该是一个设计良好的class,它包含了很多实用的功能,让人们更加容易使用接口。它充分利用GPU与内存的性能等等。 另外作为一个设计良好的类,一个自定义view还应该有以下特性: 遵从android标准 提供可以在layout中使用的自定义属性 兼顾各种人士需求(比如视力,听力) 兼容各种android平台版本 android的sdk提供了一系列的基础的类和xml的标记来帮助你创建一个满足你需求的自定义view。本节课将讨论如何利用android的framwork来创建一个有基本核心功能的自定义view。
前两天想实现一个圆角图片的效果,通过网络搜索后找到一些答案。这里自己再记录一下,加深一下自己的认识和知识理解。 实现圆角图片的思路是自定义一个ImageView,然后通过Ondraw()重绘的功能,将drawable和一个圆形进行重叠绘制,这样就可以达到圆角的效果了。 下面开始具体实现圆角图片的过程。 第一步:写自定义属性文件 首先我们需要定义一个属性。在values目录下面新建一个xml文件,这个文件用来自定义一些属性,这样我们就可以写出自己的控件了。
在一次面试中,被问到volatile与synschonized的区别,概念模模糊糊,今天做一个总结,加强自己的认识。 本文参考http://www.cnblogs.com/dolphin0520/p/3920373.html,主要对自己的认识做个总结。 valitile这个关键词,不局限于java中,其实很多语言中都有这个关键词。由于自己之前对于多线程的编程接触比较少,而且对于java的内存模型不是很了解,所以今天做一个总结。 内存模型 现在想想大学那会学的操作系统真是太有用了,可惜当时没有认真学,很多编程的问题,都可以归结到操作系统,而且很多优秀的设计都是从操作系统来的。不说了,一把心酸泪。还是努力弥补吧。
android中Activity可以说是四大组件中用的最为广泛,也是最为基本的一个组件。几乎和用户的所有交互都需要通过Activity来实现。 最近在学习过程中,有一些关于Activity的内容,让我迷惑。所以在此总结一番,以使我的知识更加牢固。 1.Activity的生命周期: 通常的生命周期一看图,都明白,但是今天遇到一个问题,让我很是无解,查了好半天,才查到原因。 刚开始我理解的是,当一个Acitivity强制设置为横屏后,再按电源按键进行锁屏,是不会重新走oncreate的,后来发现不对,因为手机本来是竖屏的,当你锁屏之后,其实又相当于切换到竖屏了,所以还是会调用oncreate的。接下来还有一个问题,那怎么才能屏蔽这个问题呢。在mainfest文件中,给activity配置android:configChanges=”orientation|keyboardHidden”。本来应该说就可以了,但是尝试了半天还是不行。于是又搜索了很多,才发现在api 13之后,需要添加screenSize,所以正确的应该是android:configChanges=”orientation|keyboardHidden|screenSize”
开头: 在做android开发的时候,我们经常会遇到这样的布局,上面是一个图片轮播图,下面是一些列表的项目。很多新闻app,视频类app都采用这样的布局。起初的时候 由于没有很多参考,我自己想到了一种实现方式,就是用scrollview作为外面最大的布局,然后里面嵌套viewpager和listview,但是我现在非常不推荐这种方式,一方面由于这种方式 需要将listview完全展开,缺少了getview函数中应该有的复用与优化。而且结构嵌套复杂。经过一番查找与学习,学习到两种比较规范或者结构比较清晰的实现方式,那么下面,我来分别介绍
最近在做android相关的开发,ListView中有一个图片错位的问题,今天查了很多人写的一些东西,所以记录下来,算是一种加深理解吧。 ListView是一个非常常用的控件,功能可以扩展的很丰富,而且与GridView有很多相似的地方。都可以存放大量数据。而且当我们需要比较复杂的布局时,一般用SimpleAdapter,或者继承BaseAdapter自己重写。 如果是继承ArrayAdapter,SimpleAdapter的时候,由于父类本身维护了一个List,所以当有数据更新的时候,尽量用adapter的add,这样可以保证getCount()返回的值是正确。 这里面涉及到的一个比较重要的重写函数就是getView 在getView中有三种方式实现view的返回。