android studio修改包名生成一个新的项目 1.问题:如何修改一个包名去生成一个新的项目呢?如上图所示单纯的去修改一个包名,这样子在运行新的项目的时候,还是会覆盖之前的那个项目。虽然和之前的包名已经是不一样了,那为什么还是会覆盖之前的项目呢?这个时候我们要注意的一个地方是修改application id?如果这个修改appli...
AndroidStudio MVPPlugin MVPPlugin插件前言从Google推出官方MVP架构demo到现在大概有一年多的时间了,半年前大概在所有的Android技术社区都有提到MVP架构,现在关于MVP架构的话题似乎没有以前那么多了,可能是因为大家都已经能够熟练的使用MVP了。在这里先炒碗闲饭,提供了一个快速生成MVP模式...
继承AppCompatActivity和Activity的Activity隐藏标题栏的区别 问题:在去掉标题栏的时候要分别是继承的AppCompatActivity,还是继承的Activity,两种是不同的方式来隐藏标题栏,针对不同的方式来隐藏不同的标题栏。继承Activity的时候如何隐藏标题栏?解决办法:(1).在代码里实现requestWindowFeature(Wi...
Android架构之App组件化方案详细实践与总结 1、Android组件化项目在Android项目组件化之前,我们的项目都是像下图那样,一个单一工程下,根据不同的业务分几个文件夹,把需要的第三方库依赖下就开始开发了,这样的代码耦合严重,牵一发而动全身,删除某处代码就会到处报错,如果不解决掉报错的地方,就没法编译打包,而且这样的代码只适合于个...
手势监听 GestureDetector.SimpleOnGestureListener onScroll参数问题 前言当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionEvent event)方法,我们可以处理一些touch事件,但是这个...
自定义TopBar和属性封装 前言在实际工作中,当我们接到boss要做一个如下界面时也许会有很多这样共同的界面,当然我们每个界面都写一个这样的Topbar,也是可以实现统一的效果,但是要修改的时候,那我们岂不是要废掉(what?)我们我要写自定义基础的View封装起来使用,这样在修改的时候,我们就会省很多事。那么...
CoordinatorTabLayout - TabLayout 和 CoordinatorLayout 相结合的折叠控件 CoordinatorTabLayoutCoordinatorTabLayout是一个自定义组合控件,可快速实现TabLayout与CoordinatorLayout相结合的样式 继承至CoordinatorLayout, 在该组件下面使用了CollapsingToolbarLayout包含...
HTML5 学习笔记 第1章:Html的介绍1.1 基础知识1.font-size:12px;(窗口的文字大小的变化)2.color:#930;(文字颜色的变化)3.text-align:center;(窗口的文字居中的变化)4.<h1>勇气</h1>:(标题标签)5.<p...
自定义视频播放器 自定义视频播放器前言这段时间公司要做视频播放的项目,之前没有任何这方面的相关经验,经过多方查阅写出来一个demo,相对而言还是比较完整的,在这边记录一下,顺便能够帮助更多的人来学习视频的播放,也顺便作为自己的一个笔记。1.首先要在SDCard中放置一个视频文件(咱们示例本地的视频播放)...
【Android】PreviewSeekBar使用 前言PreviewSeekBar的使用。适合用于显示预览是SeekBar。如在谷歌播放的电影。Google Play Movies如下:PreviewSeekBar's sample如下:Builddependencies { compile 'com.github.r...
【Android】自定义手机界面状态栏 前言我们知道IOS上的应用,状态栏的颜色总能与应用标题栏颜色保持一致,用户体验很不错,那安卓是否可以呢?若是在安卓4.4之前,答案是否定的,但在4.4之后,谷歌允许开发者自定义状态栏背景颜色啦,这是个不错的体验!若你手机上安装有最新版的qq,并且你的安卓SDK版本是4.4及以上,你可以看下它...
android常用方法封装(一) 前言都是一些很基本的方法,这边主要是做一些笔记。(一)SD卡的缓存地址获取,存文件页可以存在这个地方,会伴随着软件的卸载而删除。 public File getDiskCacheDir(Context context, String uniqueName) { Strin...
MediaPlayer的使用 前言本文介绍MediaPlayer的使用。MediaPlayer可以播放音频和视频,另外也可以通过VideoView来播放视频,虽然VideoView比MediaPlayer简单易用,但定制性不如用MediaPlayer,要视情况选择了。MediaPlayer播放音频比较简单,但是要播放视频...
MediaPlayer和SurfaceView播放视频 前言使用MediaPlayer出了了可以播放音频之外,还可以播放视频文件,只不过使用MediaPlayer播放视频时,没有提供图像输出界面。可以使用SurfaceView组件来显示视频图像。使用MediaPlayer和SurfaceView播放视频大致可以分为如下四个步骤:1)定义Surf...
lint代码检查 一:android代码lint检查除了队员之间的代码Review,还可以通过android 代码lint的方式review代码。android studio默认已经提供了强大的lint检查工具,通过其我们可以很方便的发现代码中存在的问题,修正可能出现的bug等。通过android stu...
【Android】Android产品-减小APK大小(2) 想了解产品开发规范的:https://my.oschina.net/u/2547914/blog/815562随着移动技术的深入发展,各种炫酷效果的更新,在我们追求UI与UE的同时一个不如忽视的问题逐渐暴露出来,那就是apk文件越来越大,可能有的童鞋会说现在都是wifi环境,apk文件增大...
【Android】Android产品-开发规范 前言为什么需要开发规范?编码规范对于程序员而言尤为重要,有以下几个原因:1)一个软件的生命周期中,80%的花费在于维护2)几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护 3)编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码4)如果你将源码...
【Android】接口文档 前言每个项目进行研发之前,都会有很多的相对应的文档,当然比较重要的一个就是接口文档,当然接口文档版本也有很多,这边只是把自己写文档的一部分内容写个示例记录一下,方便以后自己查看。当然大家有很好的建议和意见可以关注和留言交流。设置描述设计描述,主要是介绍项目接口文档的业务及主要功能介绍,有...
【Android】android自定义View以及属性的实现(2) 前言如果对自定义ViewGroup感兴趣的,可以去查看第一篇文章:https://my.oschina.net/u/2547914/blog/8107221.自定义View的属性2.在View的构造方法中获取我们自定义的属性3.重写onMesure方法(有的时候重写)4.重写onD...
【Android】自定义ViewGroup(1) 前言主要介绍的是ViewGroup的自定义,ViewGroup相当于一个放置View的容器,并且我们在写布局xml的时候,会告诉容器(凡是以layout为开头的属性,都是为用于告诉容器的),我们的宽度(layout_width)、高度(layout_height)、对齐方式(layout_g...