自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Android开发那些年

A programmer's greatest wealth, is the accumulation of code

  • 博客(23)
  • 资源 (10)
  • 收藏
  • 关注

原创 Flutter学习(六)

一、工程目录二、工程配置pubspec.yaml//关于flutter的一个主题,可以不用cupertino_icons: ^0.1.2//使用material就可以uses-material-design: true插件引用dependencies: flutter: sdk: flutter flutter_webview_plugin: "^0.2.1+...

2019-09-05 16:55:03 263

原创 Flutter学习(五)

布局void main() => runApp(new MyApp());class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { //标题部分 Widget titleSection = new Container( padding: c...

2019-08-20 11:20:03 307

原创 AndroidStudio 引入项目代码报错(R文件爆红)

AndroidStudio 引入项目代码报错(R文件红色)一、自带清除缓存点击AndroidStudio菜单File -> Invalidate Caches/Restar… ,在弹出的对话框中点击Invalidate and Restar,等待AS清理并自动重启。二、删除user目录下.AndroidStudio中的文件关闭AndroidStudio,进入C:\Users\xUs...

2019-06-04 10:27:19 3760 1

原创 Android studio 快速“Gradle的依赖缓存可能损坏”问题

Android studio官方版本更新,各种配置工具 也跟着更新。更新后导入工程时(使用Android工程编译或者导入新的工程没有对应的gradle版本)一些电脑出现一下问题。Error:Failed to open zip file. Gradle's dependency cache may be corrupt (this sometimes occurs after a netwo...

2019-05-07 14:02:16 3709

原创 Flutter学习(四)

手势处理GestureDetector Classvoid main() => runApp(MaterialApp( title: "手势处理示例", home: MyApp(), ));class MyButton extends StatelessWidget { @override Widget build(BuildContext c...

2019-05-05 13:40:57 192

原创 git 在android studio中重新关联远程仓库地址及修改用户名和密码

git 在android studio中重新关联远程仓库地址的方法方法有三种:1.修改命令git remote set-url origin [url]例如:Git remote set-url origin gitlab@gitlab.chumob.com:PHP/hasoffer.git2.先删后加git remote rm origingit remote add origin...

2019-04-29 17:47:27 9011 1

原创 Flutter学习(三)

包装控件Rowvoid main() => runApp(MaterialApp( title: "包装控件", home: LayoutDemo(), ));class LayoutDemo extends StatelessWidget { @override Widget build(BuildContext context) { ...

2019-04-29 11:04:00 270

原创 Flutter学习(二)

StatefullWudget和StatelessWidgetFutter的升级

2019-04-23 15:32:31 318 1

原创 Flutter学习(一)

Flutter开发环境的搭建flutterSDK的安装下载flutterSDK下载地址:https://flutter.dev/docs/development/tools/sdk/releases注意:下载SDK需要科学上网操作配置环境变量:解压SDK到制定位置,然后根据bin路径配置系统环境变量pathcmd命令窗口显示如图flutter帮助信息即环境配置完成fl...

2019-04-19 13:45:17 264

原创 Android Studio直接运行调试签名包

Android Studio 直接运行将apk装载在模拟器或是手机上的都是它默认的一个debug包,而无正式的签名。默认的debug.store的签名信息是这样的:Keystore name: “debug.keystore”Keystore password: “android”Key alias: “androiddebugkey”Key password: “android”...

2019-04-17 11:35:27 3648

原创 Dart入门(三)

面向对象扩展继承,继承中的构造方法抽象类接口Mixins,操作符的覆写继承使用关键字 extends继承一个类子类会继承父类可见的属性和方法,不会继承构造方法子类能够复写父类的方法、getter和setter单继承、多态性继承中的构造方法子类的构造方法默认会调用父类的无名无参构造方法如果父类没有无名无参构造方法,则需要显示调用父类构造方法在构造方法参数后使用 : 显...

2019-04-11 18:03:14 243

原创 Dart入门(二)

面向对象类与对象,声明、创建及基本特性构造方法及初始化列表静态成员及对象操作符的使用类与对象使用关键字class声明一个类使用关键字new创建一个对象,new可以省略所有对象都继承与Object类属性与方法属性默认会生成getter和setter方法使用final声明的属性只有getter方法属性和方法通过 . 访问方法不能被重载void main(){//可以...

2019-04-11 14:11:41 487

原创 Dart入门(一)

Dart语言背景Dart 属于什么级别的语言Dart 属于应用层编程语言。它有自己的 DartVM ,通常情况下运行在自己的VM上,但是在特定情况下他也可以编译成 Native Code 运行在硬件上(比如移动开发框架中,Flutter 会将代码编译成指定平台的 Native Code 以提高性能)。运行 Dart 编写的软件,既可以以明文代码的方式直接运行,还支持运行快照打包后的二进制,以提...

2019-04-08 17:45:56 2627

原创 Gradle学习(三)

自定义gradle插件因为gradle插件是在编译过程中生效, 不用修改代码就能实现很多功能, 几乎每个app都使用了gradle插件。最近一直在深挖Android Gradle的学习,发现其实所谓的Android Gradle也不过就是一个gradle插件,所以如果能学好gradle的开发,我们就可以利用Gradle为我们做很多事,比如干预Android的打包,打出我们想要地apk或者jar,...

2019-03-18 18:20:05 266

原创 Java反射

       要想理解反射的原理,首先要了解什么是类型信息。Java让我们在运行时识别对象和类的信息,主要有2种方式:一种是传统的RTTI,它假定我们在编译时已经知道了所有的类型信息;另一种是反射机制,它允许我们在运行时发现和使用类的信息。RTTI与反射的区别和联系如何获得一个类的Class对象?分为两种情况:一:如果该类在编译前就已知。也就是该类在c...

2019-03-12 15:24:09 118

原创 编译时动态生成代码技术之javapoet(四)

先说几个核心类MethodSpec定义方法TypeSpec定义类丶接口丶抽象类丶枚举JavaFile定义一个输出java文件MethodSpec介绍MethodSpec main = MethodSpec.methodBuilder(“main”)//定义方面名.addModifiers(Modifier.PUBLIC, Modifier.STATIC)//定义修饰符.return...

2019-03-05 19:08:17 1400

原创 编译时动态生成代码技术之java注解(一)

什么是注解?从JDK5开始,Java增加了注解,注解是代理里特殊的标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。通过使用注解,开发人员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具,开发工具和部署工具可以通过这些补充信息进行验证,处理或者进行部署。注解的分类(1)标注注解@Overrride:对覆盖超类中的方法进行标记,如果被标记的方 法并没有实...

2019-03-04 22:38:54 1672

原创 编译时动态生成代码技术之注解处理器(三)

概念注解处理器(Annotation Processor)是javac内置的一个用于编译时扫描和处理注解(Annotation)的工具。在源代码编译阶段,通过注解处理器,我们可以获取源文件内注解(Annotation)相关内容。APT(Annotation Process Tool),是一种在代码编译时处理注解,按照一定的规则,生成相应的java文件,多用于对自定义注解的处理,对运行时的性能影...

2019-03-04 16:55:53 830

原创 编译时动态生成代码技术之Element详解(二)

基本介绍element指的是一系列与之相关的接口集合,用于建模java编程语言元素的接口,它们位于javax.lang.model.element包下面element是代表程序的一个元素,这个元素可以是:包、类/接口、属性变量、方法/方法形参、泛型参数。element是java-apt(编译时注解处理器)技术的基础,因此如果要编写此类框架,熟悉element是必须的。Element及其子接...

2019-03-01 17:58:12 2458

原创 RxJava2.0操作符(三)

RxJava操作符图谱先对RxJava的操作符有一个整体结构的认识,然后从简单的操作符入手开始研究。转换操作符 – mapmap是RxJava中最简单的一个变换操作符了, 它的作用就是对Observable发送的每一个事件应用一个函数, 使得每一个事件都按照指定的函数去变化.一个简单的例子:Observable.create(new ObservableOnSubscribe<In...

2019-02-20 14:58:14 363

原创 RxJava2.0基础用法(一)

要在Android中使用RxJava2, 先添加Gradle配置:compile ‘io.reactivex.rxjava2:rxjava:2.0.1’compile ‘io.reactivex.rxjava2:rxandroid:2.0.1’RxJava链式操作:Observable.create(new ObservableOnSubscribe<Integer>() {...

2019-02-19 17:24:51 919

原创 RxJava2.0线程控制(二)

正常情况下, Observable和Observer是工作在同一个线程中的, 也就是说Observable在哪个线程发事件, Observer就在哪个线程接收事件.当我们在主线程中去创建一个Observable来发送事件, 则这个Observable默认就在主线程发送事件.当我们在主线程去创建一个Observer来接收事件, 则这个Observer默认就在主线程中接收事件.以Android为例...

2019-02-19 17:17:00 500

转载 方法论——程序员的阿喀琉斯之踵

方法论——程序员的阿喀琉斯之踵语言工具haskell算法产品编程以前,我认为一个事物对我没有直接用途的时候就不会去理会它,心理学上说我们都戴着自己的认知偏见的有色眼镜去有选择性地看待这个世界,纷繁的信息经过我们的认知图式过滤之后便成为少量有序的事件,所以我们都在有强烈选择性地关注一些事物和忽视另一些事物,然而,这样可能会导致丧失一些很有价值的信息,而总是将知识面停留在自己的小世界中——当然...

2015-08-31 17:28:04 434

app的差量更新

现在的app要求越来越高,除了体验,节省用户流量也是关键

2015-08-31

java的23种设计模式全总结

设计模式,帮助我们更好的开发,代码更有效率,可读性更高

2015-08-31

logcat全解析

调试代码,少不了logcat,这里有logcat的全解析大全,教你玩转不为人知的技巧

2015-08-31

内容观察者模式运用

在实现一些复杂的事件监听的时候,项目里会用到内容观察者模式,自定义内容观察者

2015-08-31

在线视频播放代码需要调试

这个没有正好,拿到代码的大神,在线播放MP4,要求不卡顿,有缓冲,没有做到

2015-08-31

MP4播放器源代码

MP4的播放器,包括开始播放,暂停,重新播放等控件。

2015-08-31

junit单元测试框架

junit单元测试,帮助我们快速调试方法,增加开发效率

2015-08-31

svn的使用高手

它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。

2015-08-31

炫酷的viewpager

viewpage指针,自动添加,滑动动画,不一样的用户体验

2015-08-31

各种UI效果牛大发了

各种牛X的UI效果,动画,啥都有,以后再也不用担心效果挠头,做不出来

2015-08-31

空空如也

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

TA关注的人

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