自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android 应用签名配置记录

一、生成签名文件生成 keystore 签名文件,可以直接通过 AS 生成。Build–>Generate signed Bundle/APK --> APK --> Create new…填写配置信息:设置 keystore 路径、密码,设置key:别名、密码、有效期,证书等。Key store path:存放路径(文件名和后缀都可以根据需要任意填写)Key A...

2020-04-09 17:07:49 511

原创 泛型:为什么使用泛型与泛型的基本使用

1. 为什么使用泛型泛型是 Java SE 1.5 的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。相对于传统上的形参,可以使我们的参数具有更多类型上的变化,使代码能更好地复用。先看一段代码:public class Box { private String valu...

2019-05-21 17:12:54 304

原创 设计模式整理(12) 中介者模式

学习《Android 源码设计模式解析与实践》系列笔记介绍生活中经常能听到或接触到各种“中介者”,比如买房子或者租房,可能会通过房屋中介;买二手车会有二手车中介;找工作也可以通过中介。中介者模式属于行为型模式。定义中介者模式包装了一系列对象相互作用的方式,使得这些对象不必相互明显作用。从而使它们可以松散耦合。使用场景当对象之间的交互操作很多且每个对象的行为操作都依赖彼此时,为防止...

2019-03-01 14:00:35 205

原创 设计模式整理(11) 装饰模式

学习《Android 源码设计模式解析与实践》系列笔记介绍装饰模式,也称包装模式,结构型设计模式之一。定义动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。使用场景需要透明且动态地扩展类的功能时。结构Component : 抽象组件。接口或抽象类,被装饰的原始对象。ConcreteComponent : 组件具体实现类。Decorator...

2019-03-01 13:55:48 158

原创 设计模式整理(10) 适配器模式

学习《Android 源码设计模式解析与实践》系列笔记介绍经常会碰到两个没有关系的类型之间需要进行交互,但是双方又都不想做出修改,这种尴尬的情况下,可以增加一个 Adapter 的角色,进行两个不同类型的接口的兼容。例如:读卡器是作为内存卡和笔记本之间的适配器。将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。适配器模式属于结构型模式。定义适配器模式把一个...

2019-02-18 11:08:17 151

原创 设计模式整理(9) 观察者模式

学习《Android 源码设计模式解析与实践》系列笔记介绍观察者模式是使用率非常高的模式,最常用在 GUI 系统、订阅-发布系统。观察者模式的重要作用是使被观察者和观察者间的解耦,使它们间的依赖性变小。观察者模式属于行为型模式。定义观察者设计模式定义了对象间的一种一对多的组合关系,以便一个对象的状态发生变化时,所有依赖于它的对象都得到通知并自动刷新。使用场景关联场景,需要注意的...

2019-02-15 14:51:24 148

原创 设计模式整理(8) 责任链模式

学习《Android 源码设计模式解析与实践》系列笔记介绍所谓的链,是指将多个节点首尾相连形成的结构。编程中的责任链模式,类似于这种结构,将每个节点看作是一个对象,每个对象拥有不同的处理逻辑,将一个请求从链式的首端发出,沿着链的路径一次传递,直到有对象处理这个请求为止,我们将这样的模式称为责任链模式。责任链模式属于行为型设计模式。定义使多个对象都有机会处理请求,从而避免了请求的发送...

2019-02-14 17:04:24 235

原创 设计模式整理(7) 状态模式

学习《Android 源码设计模式解析与实践》系列笔记介绍状态模式和策略模式都是行为型模式。状态模式中的行为是由状态来决定的,不同的状态下有不同的行为。状态模式和策略模式的结构基本一样,但是它们的目的、本质是完全不一样的。策略模式是封装一系列彼此独立、复杂多变、可替换的实现方式。状态模式是把对象的内在状态的变化封装到不同的状态对象里,状态变化时,其行为也随之改变。定义当一个对象的内...

2019-02-14 14:22:58 228

原创 设计模式整理(6) 策略模式

学习《Android 源码设计模式解析与实践》系列笔记介绍通常如果一个问题有多种解决方案时,我们会根据不同的场景选择不同的解决方案。而最简单的实现,是利用 if-else 或者 switch-case。但是这样实现的代码耦合性太高、代码臃肿,维护成本大。策略模式能很好的解决这些问题。定义策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使...

2019-02-13 14:19:33 144

原创 设计模式整理(5) 工厂模式

学习《Android 源码设计模式解析与实践》系列笔记介绍工厂模式属于创建型设计模式之一,是一种结构简单的设计模式,也是应用广泛的设计模式。工厂模式是用来实例化对象的模式,是用工厂方法代替 new 操作的一种模式。这种替代可以给系统带来更好的可扩展性。定义定义一个用于创建对象的接口,让子类决定实例化哪个类。使用场景在任何需要生产复杂对象的地方,都可以使用工厂模式。复杂对象适合使用...

2019-02-12 17:46:40 240

原创 设计模式整理(4) 原型模式

学习《Android 源码设计模式解析与实践》系列笔记介绍原型模式是一种创建型的模式。原型模式就是用户从一个样板实例对象中复制出一个内部属性一致的对象,这个过程也可以称作“克隆”。原型模式多用于创建复杂的或者构造耗时的实例。定义用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。使用场景类初始化需要消化非常多的资源,这个资源包括数据、硬件资源等,通过原型拷贝避免这些...

2019-02-12 17:45:43 171

原创 设计模式整理(3) Builder 模式

学习《Android 源码设计模式解析与实践》系列笔记介绍Builder 模式是一步一步创建一个复杂对象的创建型模式。用户不需要知道构建过程中的实现细节,便可构建出复杂的对象模型。该模式将构建复杂对象的过程和它的部件解耦,使得构建过程和部件表示隔离开来。定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以构建不同的表示。使用场景相同的方法,不同的执行顺序,产生不同的时间...

2019-02-12 17:44:35 137

原创 设计模式整理(2) 单例模式

学习《Android 源码设计模式解析与实践》系列笔记什么是单例单例模式是应用最广,也是最容易理解的模式之一。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。定义《设计模式》(艾迪生维斯理, 1994)中的定义:“保证一个类仅有一个实例,并提供一个访问它的全局访问点。”Java 中单例模式定义:“一...

2019-02-12 17:41:14 128

原创 设计模式整理(1) 代理模式

学习《Android 源码设计模式解析与实践》系列笔记介绍生活中,存在很多代理模式的影子。例如我们想要买一辆二手车,如果自己去找,可能会在沟通和手续上花费较多的时间和精力。如果通过中介,我们只需要告诉他我们的诉求,让中介代理我们去寻找车源,办理过户手续,我们最后再付款提车就可以了。例如我们想邀请一位明星参加某个活动,但是一般人是很难直接联系到明星本人的,一般是先联系明星的经纪人,经纪人...

2019-02-12 17:36:24 172

原创 浅谈Android WebView

一、基本情况介绍Android WebView在Android平台上是一个特殊的View, 基于webkit引擎、展现web页面的控件,这个类可以被用来在你的app中仅仅显示一张在线的网页,还可以用来开发浏览器。WebView内部实现是采用渲染引擎来展示view的内容,提供网页前进后退,网页放大,缩小,搜索。Android的Webview在低版本和高版本采用了不同的webkit版本内核,4.4后直...

2018-07-09 17:04:37 287

原创 Android WebView使用笔记(二) JS注入

使用场景:  在一个第三方的web页面,如果想在页面后面拼加内容(如资讯文章需要拼加广告),如果使用WebView后面加上Android 的Native View的方式,可能会有页面卡顿或者其他问题,比如滑动问题等。  这时,其实还可以使用注入JS的方式,直接在页面的body后面加入H5形式的内容页面效果如图:   WebView中加载百度首页,点击“加载JS”后注入我们写好的JS,会在页面底部添...

2018-04-17 16:02:22 527

原创 Android 设置了ClickableSpan导致的上层View点击事件无法响应解决方案

首先感谢此题主及回答的大神提供了思路:点击打开链接  首先问题是这样的:如果LinearLayout中包了一个TextView,TextView设置了ClickableSpan,这时如果恰巧LinearLayout和TextView都设置了点击监听,这时如果点击了ClickableSpan以外的文字,LinearLayout是接收不到监听事件的。比如:<?xml version="1.0" ...

2018-03-28 17:55:41 3640 1

原创 Weex系列笔记(一)环境搭建,Hello Weex World

weex官网:http://weex.apache.org/cn/guide/1.开发环境搭建(ubuntu)1.1 安装 nodejs 和 npm      在 nodejs官网 下载 nodejs 文件      我下载的是 node-v8.9.4-linux-x64.tar.xz 版本        (1)解压文件    tar -xvf node-v8.9.4-linux-x64.tar....

2018-02-10 11:23:27 1152

原创 Android 夜间模式系列笔记(二)通过更换主题实现夜间模式

    上一篇文章   《Android 夜间模式系列笔记(一)AppCompatDelegate》    介绍了如何利用系统提供的Theme.AppCompat.DayNight主题,来实现应用夜间模式,使用这种能很方便的实现夜间模式,但是缺陷也很明显,每次都需要调用recreate重新启动activity。     这次介绍另外一种实现方式,可以不重启activity,就能实现夜间模式。   ...

2018-01-12 14:38:51 1334

原创 Android 夜间模式系列笔记(一)AppCompatDelegate

系列文章:《Android 夜间模式系列笔记(二)通过更换主题实现夜间模式》Support Library 23.2在AppCompat 加入了新的主题:Theme.AppCompat.DayNight,使应用可以很便捷的实现日夜模式。            使用方式:1.引入support包(版本需要大于23.2)compile 'com.androi

2018-01-10 10:02:00 3155

原创 Android 内存优化系列笔记(一)内存抖动

所谓的内存抖动,就是指段时间内新建大量局部对象后,又被释放掉了,这种频繁GC可能会导致卡顿检测是否存在内存抖动的方法有:一:直接使用Android Device Monitor查看           二:手机自带工具    如魅族手机里的(辅助功能->开发者选项->性能优化->实时内存监测)    选择对应的进程打开后就可以了    通过上面方法确定了有内

2017-12-22 17:51:49 620

原创 Android WebView使用笔记(一)

1.WebView释放不当导致的泄漏       WebView使用后,释放不当,会导致内存泄漏例如:在xml中声明的WebView<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"

2017-11-10 14:48:36 250

原创 Android 根据color id 获取颜色16进制值

public static String changeColor(int id, Context context){ StringBuffer stringBuffer = new StringBuffer(); int color = context.getResources().getColor(id); stringBuffer.append(...

2017-11-03 14:55:45 5416 2

原创 Retrofit基本使用方法

Retrofit github地址:https://github.com/square/retrofit            官方文档:http://square.github.io/retrofit/接口文档:http://www.sojson.com/api/weather.html使用的接口:http://www.sojson.com/open/api/weather/

2017-09-19 18:38:50 2732

原创 ubuntu jdk1.7升级到1.8

首先,需要下载1.8版本的jdk直接到官网下载我下载是的 jdk-8u144-linux-x64.tar.gz1.解压  tar -xzvf jdk-8u144-linux-x64.tar.gz2.移到usr/lib/jvm/目录下 sudo mv jdk1.8.0_144/ /usr/lib/jvm/jdk1.8.0_1443.查看当前1.7的

2017-08-22 15:40:44 3041

原创 Android 软键盘顶部加入工具条

先来个效果图:这个有点仿uc浏览器的,,,直接上代码:       新建一个工程,然后MainActivity的layou文件如下:    &lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" ...

2017-08-21 18:23:49 4976 2

原创 Android 注解,实现动态绑定view

之前的一篇文章介绍了什么是注解 (直达链接:点击打开链接)现在有许多开源的注解框架,比如:butterknife/androidannotation等,这些框架能帮助我们大大简化了代码,使我们不用再机械的写这种findViewById,setOnClickListener等方法接下来就自己用注解,实现了一下view的绑定1.声明注解 @Target(El

2017-06-30 15:57:58 1134

原创 Android 使用系统下载管理器DownloadManager下载文件

使用系统下载管理器,主要有两个类:DownloadManager, DownloadManager.Request1.建立一个下载   声明一个DownloadManager对象private DownloadManager mDownloadManager;mDownloadManager = (DownloadManager) mApplicationContext

2017-06-29 12:17:44 7377

原创 Android 安装应用的两种方式--外部应用安装器安装和静默安装(系统应用)

安装应用的两种方式 1.调用外部应用安装器安装(全部适用) 2.具有系统权限的应用通过反射PackageManager的接口实现静默安装

2017-06-09 15:41:53 6350

原创 Java 注解

最近项目上需要用到注解相关的内容,所以学习了解了一下,也是参考了网上的几个博客,留下了这篇笔记。一.什么是注解      定义:注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。     作用

2017-05-08 23:01:26 301

原创 Android横竖屏设置

默认情况下,当用户手机的”屏幕旋转”选项打开后,旋转手机方向,手机屏幕也会跟随旋转的方向进行横竖屏切换.设置屏幕旋转的方式有两种:一.在AndroidManifest.xml设置  如果activity默认是某种模式的,直接在AndroidManifest.xml中的对应activity项中,添加相应的代码即可实现  如:    androi

2017-04-01 10:53:20 19878 2

ORMLite 简单例子

关于ORMLite的使用,包括数据的插入,删除,修改,查询,用到了databasehelper.

2014-04-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除