自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

94me的博客

Wide is the gate and broad is the way that leads to destruction,and many enter through it.

  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 Flutter自定义标题栏之处理状态栏高度

App在很多情况下由于各种需求需要自定义标题栏,而在能够构建Android和IOS应用的Flutter中,如果不在Scaffold中使用AppBar会发现默认是沉浸式。 猜想:我们使用自定义标题栏好像需要知道状态栏的高度,我看到网上很多人想要自定义标题栏,却老是去找怎么获取状态栏的高度 解惑:其实并不用获取状态栏的高度,你想AppBar也是状态栏,它也需要知道状态栏的高度,它需要...

2018-08-27 12:57:14 15932 6

原创 代理模式之动态代理

代理模式(Proxy Pattern) :给某一个对象提供一个代 理,并由代理对象控制对原对象的引用。代理模式的英 文叫做Proxy或Surrogate,它是一种对象结构型模式。 接口类interface ProxyInterface{ void testProxy();}实现类static class ProxyImpl implements Proxy...

2018-08-03 20:28:02 293

原创 Jetpack之Navigation源码学习(二)

如果有人不相信代码是简单的,那是因为他们没有意识到人生有多复杂。 本篇梳理NavGraph的构建和加载流程NavHostFragement#onInflate(Context context, AttributeSet attrs, Bundle savedInstanceState)@Override public void onInflate(Context...

2018-08-03 16:46:42 533

原创 Jetpack之Navigation源码学习(一)

Navigation源码学习 如果有人不相信代码是简单的,那是因为他们没有意识到人生有多复杂。 NavigationNavigation.findNavController(it).navigate(R.id.action_page)一句代码实现导航往往凝聚了多少智慧Navigation.findNavController()public stat...

2018-07-28 19:21:40 1716

原创 Retrofit与LiveData结合

Retrofit与LiveData结合写上题目有点不知道怎么写了的很短暂的尴尬 有个问题,为什么我们可以直接更改service接口方法的返回值。先解释一波,相信我们都对Rxjava+Retrofit使用很熟悉了吧,回忆一下步骤添加了Retrofit对Rxjava支持的依赖implementation 'com.squareup.retrofit2:adapter-rxj...

2018-07-19 18:31:42 5897 2

原创 ParameterizedType详解

ParameterizedType详解参数化类型public interface ParameterizedType extends Type { Type[] getActualTypeArguments(); Type getRawType(); Type getOwnerType();} 何为参数化类型列举一个实体类用代码来解释什么...

2018-07-19 15:24:02 29659 11

原创 AtomicBoolean意义何在

AtomicBoolean意义何在提供了一种在多线程中安全处理业务逻辑的方案private var started = AtomicBoolean(false)if (started.compareAndSet(false, true)) { call.enqueue(object : Callback<R> { ...

2018-07-19 11:46:40 4323

原创 RxJava操作符使用

一、创建操作Create使用一个函数从头开始创建一个Observable 一个形式正确的有限Observable必须尝试调用观察者的onCompleted正好一次或者它的onError正好一次,而且此后不能再调用观察者的任何其它方法。 Observable.create(new Observable.OnSubscribe<Integer>() { ...

2018-03-07 10:08:46 332

原创 DataBind配置及简要使用

配置在Moudle级的gradle里添加//使用dataBindingdataBinding { enabled true}简要使用布局<?xml version="1.0" encoding="utf-8"?><layout xmlns:android="http://schemas.android.com/apk/res/android"&...

2018-02-26 14:54:00 1376

原创 Kotlin+DataBinding报错

问题 Error:(6, 26) Unresolved reference: databinding Error:(10, 14) Unresolved reference: ActivityMainBinding解决办法Moudle级添加kapt { generateStubs = true}dependencies { ext{ ...

2018-02-26 14:10:00 878

原创 Constranint布局配置和使用教程

项目配置注:可从Api level 9开始使用ext{ constraint = '1.0.2'}implementation "com.android.support.constraint:constraint-layout:$ext.constraint" 可用约束类型相对定位边距居中定位环形定位可见性行为尺寸限制链虚拟助手注:...

2018-02-24 18:21:30 1099

原创 Android获取坐标细则

Android坐标系:x轴向右,y轴向下,z轴向上View相对坐标 getTop() View的上离x轴方向父布局的距离 getLeft() View的左离y轴方向父布局的距离 getBottom() View的下离x轴方向父布局的距离 getRight() View的右离y轴方向父布局的距离 注:这四个方法获取的坐标表示的是

2018-01-30 11:24:05 411

原创 Java设计模式(一)——面向对象设计原则

设计原则名称 定义 单一职责原则 (Single Responsibility Principle, SRP) 一个类只负责一个功能领域中的相应职责 开闭原则 (Open-Closed Principle, OCP) 软件实体应对扩展开放,而对修改关闭 里氏代换原则 (Liskov Substitution Principle, LSP) 所有引用基类对象

2018-01-23 14:25:59 273

原创 RxLifecycle使用

一、添加依赖//rxLifeCyclecompile 'com.trello:rxlifecycle:1.0'compile 'com.trello:rxlifecycle-components:1.0'二、Activity/Fragment需继承RxAppCompatActivity/RxFragment目前支持的有RxAppCompatActivity、RxFragment、

2018-01-18 09:56:59 520

原创 RxJava创建之骚操作

Timer个人理解:订阅后经过一定时间返回一个可观察对象 骚操作: /** * 延迟执行 * @param delayTime 延迟时间(单位秒) * @return Observable */ public static Observable delayDo(int delayTime){ return Observa

2018-01-17 17:32:11 408

原创 RxJava过滤之骚操作

Debounce个人理解:经过一定时间结束,会发送这一定时间内最近的一项数据(若两个一定时间内重复了则不发送数据,则等待最后一个时间结束发送最近的一项数据) 骚操作:/** * 搜索防频繁请求 * @param textView view * @param time 单位毫秒 * @return Observable */public static Observable

2018-01-17 17:23:27 350

原创 RxJava使用小结

一、Obserable一个观察者(Observer)订阅一个可观察对象(Observable)。观察者对Observable发射的数据或数据序列作出响应。 val obserable = Observable.just(1) obserable .subscribe({ t: Int? -> })二、Single名为Single的Observable变种 Sin

2018-01-17 11:32:54 221

原创 Android混淆

混淆使用android { ... buildTypes { release { minifyEnabled true zipAlignEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'pr

2018-01-16 11:45:29 235

原创 Fragment判断可见性

判断可见性addFragment或者replaceFrament@Overridepublic void onResume() { super.onResume(); //TODO now visible to user}@Overridepublic void onPause() { super.onPause(); //TODO now in

2018-01-12 14:15:31 3661

原创 使用kotlin

在项目依赖中添加 classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:1.1.51” 在app的gradle中添加 apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’

2017-11-17 13:03:27 342

原创 从点击屏幕到事件处理的事件分发源码流程

从点击屏幕到事件处理的事件分发源码流程有事没事先来张图 怎么打印出来的,代码先奉上 Thread.dumpStack(); 在dispatchTouchEvent(MotionEvent event)方法中执行该方法通过以上方法,可打印出从点击屏幕到执行dispatchTouchEvent(MotionEvent event)的执行流程,感觉以后分析再也不用去一个个方法去找了直接根据流程来就是

2017-11-07 13:20:31 386

原创 StartActivity路上的mParent

源码基于API26 mParent干嘛来着,带着这个疑问上车了通过源码发现在Activity中attach()方法中赋值了,事实上还有个方法也可以赋值,即setParent(Activity parent). 不多说直接看attach()final void attach(Context context, ActivityThread aThread, Instr

2017-10-18 22:50:57 834 1

原创 源码探探之startActivity(二)

源码基于API26 在上一篇中,讲到由ActivityThread启动activity了 ActivityThread即我们平时提到的主线程,上一篇中AMS处理启动activity的task和record信息后通过binder跨进程到应用当前线程继续启动activity 现在看ActivityThread的scheduleLaunchActivity()@Override public

2017-10-18 10:04:42 369

原创 源码探探之StartActivity(一)

源码基于API 26 startActivity()上车@Overridepublic void startActivity(Intent intent) { this.startActivity(intent, null);}没什么好说的//启动一个activity不需要返回值//如果context之外调用startActivity(),需要给intent添加{@link I

2017-10-18 10:04:03 1103

原创 ToolBar

一、ToolBar样式使用一览android.support.v7.widget.Toolbar 1、include<android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.andro

2017-07-20 12:48:10 350

原创 SearchView

SearchView

2017-06-09 22:43:25 313

android艺术探索源码

Android艺术探索书中源码,很多代码还是自己敲了才知道,多多努力

2017-11-01

空空如也

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

TA关注的人

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