摘要: 在同一个项目当中,很多的页面都是类似的,可以把这些相同的内容提取出来做成一个父类, 然后不同的页面去继承父类,只需要对不同的内容进行修改就可以了。 以下是我的Baseactivity的类。 首先来看一下BaseActivity的布局,如下图所示 红色部分是自定义的TitleBar,如果不清楚,可以参考我的博客 :TitleBar 蓝色部分是FrameLayout容器,用于填充各个页面不同... 阅读全文
posted @ 2017-03-09 15:22 黄大仙爱编程 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 目前许多app的页面都是采用titlebar+content的组合方式,如下图所示 其中TitleBar可以提取出来作为一个模块在多个项目里面进行复用。 以下是我自己写的TitleBar,其最终效果如图所示: 如果不清楚自定义View的创建步骤,请参见我之前的博客,自定义控件 TitleBar由三部分组成,左边是Button,中间是TextView,右边是Button,并设置了如下的自... 阅读全文
posted @ 2017-03-08 18:48 黄大仙爱编程 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 使用Rxjava框架,我个人觉得最大的好处就是能够很方便的在各个线程当中进行切换,而且代码还能保持很优雅。 在代码里面加上以下内容,便可以使用了。 compile 'io.reactivex:rxjava:1.0.14' compile 'io.reactivex:rxandroid:1.0.1' 只需要掌握以下三部分内容,便可以很方便的使用Rxjava框架了。 1.发射器和接收器 首先来看一下... 阅读全文
posted @ 2017-03-03 10:37 黄大仙爱编程 阅读(155) 评论(0) 推荐(0) 编辑
摘要: Android手机常见的屏幕尺寸信息包括屏幕大小、分辨率、屏幕密度和独立像素密度。 屏幕大小:屏幕对角线的长度,单位英寸; 分辨率:屏幕所包含的像素点数,比如720*1080就是指手机宽有720个像素,高有1080个像素; 屏幕密度(dpi或者ppi):每英寸所包含的像素数,由对角线的像素点数除以屏幕大小得到; 独立像素密度(dp或者dip):Android规定屏幕密度为160dpi时,1dp=1... 阅读全文
posted @ 2017-03-01 14:26 黄大仙爱编程 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 依赖注入指的就是类A依赖于类B,通过外部注入的方式来实现,而不是通过自身去实现。 这样做的好处就是可以使得代码之间更加的解耦。 举个例子,船(ship)包含有船桨(oar),以下为高耦合的写法, public class Oar { //船桨 public Oar(){ } } public class Shi... 阅读全文
posted @ 2017-02-17 14:12 黄大仙爱编程 阅读(170) 评论(0) 推荐(0) 编辑
摘要: Vuforia是AR开发的工具包,以下是实现其demo的步骤。 首先来看一下最终的AR效果,将手机摄像头对准指定的图片,就会在图片上面出现一个立体的茶壶。 1.在vuforia官网上注册,下载SDK和sample以及获取license key都需要登录之后才能够进行。 官网地址为https://developer.vuforia.com/# 2.下载SDK和sample 3.解压SDK... 阅读全文
posted @ 2017-02-15 13:59 黄大仙爱编程 阅读(636) 评论(0) 推荐(0) 编辑
摘要: Vuforia是AR开发的工具包,以下是实现其demo的步骤。 首先来看一下最终的AR效果,将手机摄像头对准指定的图片,就会在图片上面出现一个立体的茶壶。 1.在vuforia官网上注册,下载SDK和sample以及获取license key都需要登录之后才能够进行。 官网地址为https://developer.vuforia.com/# 2.下载SDK和sample 3.解压SDK... 阅读全文
posted @ 2017-02-15 13:48 黄大仙爱编程 阅读(279) 评论(0) 推荐(0) 编辑
摘要: c++的执行效率比较高,性能需求的时候可以使用c++编写,然后打包成为so文件,在Android里面调用。 以下是具体的过程。 1.创建一个Android项目,并声明所需要的native方法 2.创建jni文件夹,并在文件夹里面创建Android.mk文件和.c文件,c文件里面的函数文件名要对应于包名。 Android.mk文件 LOCAL_PATH := $(call ... 阅读全文
posted @ 2017-02-08 15:28 黄大仙爱编程 阅读(1777) 评论(0) 推荐(0) 编辑
摘要: Java代码当中调用c++程序,大致的步骤就是先将c++文件编译成为so文件(Windows下需要编译成为dll文件), 然后Java里面就可以调用了,以下详细说明,以linux系统为例。 1.新建Java类JniTest,定义库名称“jni-test”和函数“get()”和“set(String str)”。 public class JniTest { sta... 阅读全文
posted @ 2017-02-08 14:46 黄大仙爱编程 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 在git管理下的项目当中的文件均有3中状态,分别是已修改、已暂存、已提交。 如下图所示,存于工作区当中的文件修改之后执行add命令,则将修改存于暂存区, 接着执行commit命令,则修改被存于本地仓库当中。以下是三个区间的状态转换图。 举例说明: 1)初始化一个项目helloworld; 2) 在项目里面添加一个文件 hell... 阅读全文
posted @ 2017-01-09 17:27 黄大仙爱编程 阅读(347) 评论(0) 推荐(0) 编辑