自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 AIDL

AIDL 概述:它是用于某个service与多个应用程序组件之间进行跨进程通信,从而可以实现多个应用程序共享一个Service的功能,从而进一步实现进程间的通信(也就是一个远程服务) AIDL的客户端与服务端: 服务端:服务端首先要创建一个service(这个服务的binder继承AIDL接口.stub,重写接口中的所有方法后可以通过传参,或者return语句进行信息的传递)用来监听客户端的...

2018-08-31 12:01:09 273

原创 线程与线程池

线程与线程池   什么是线程,   提到线程就要说一下进程,   进程:  进程就是正在执行的程序,(任务管理器)   线程: 是程序执行的一条路径,一个进程中可以包含多条线程,   举个例子,你打开你的微信,这叫打开了一个进程,你在微信里跟微信好友视频聊天就是开启了一个线程,   两者之间的关系一个进程中至少有一个线程,当然也可以有多条线程 一条线程一定会在进程里面 ...

2018-08-31 12:00:21 203

原创 数据结构

数据结构是计算机存储和组织数据的的方式 数组 在Java中,数组是用来存放同一种数据类型的集合,注意只能存放同一种数据类型。 数组的局限性分析: ①、插入慢,对于无序数组,上面我们实现的数组就是无序的,即元素没有按照从大到小或者某个特定的顺序排列,只是按照插入的顺序排列。无序数组增加一个元素很简单,只需要在数组末尾添加元素即可,但是有序数组却不一定了,它需要在指定的位置插入。 ②、查找快,...

2018-08-31 11:29:18 213

原创 头像选择

//初始化一个popupWindow //Android 8.0需要使用,否则相机调用不出来  @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR2)     @Override     public View onCreateView(LayoutInflater inflater, ViewGroup container,      ...

2018-07-27 00:37:25 488

原创 城市选择器

//先导入依赖 implementation 'liji.library.dev:citypickerview:1.1.0' //初始化城市选择器 private CityPicker cityPicker; //初始化 public void initCityPicker() { //滚轮文字的大小 //滚轮文字的颜色 //省份滚轮是否循环显示 //城市滚轮是...

2018-07-27 00:34:06 826

原创 日历

调用系统的日历 //定义一个值保存状态然后三个变量分别表示年、月、日 final int DATE_DIALOG = 1; int mYear, mMonth, mDay; //初始化日历并给他们赋值 final Calendar ca = Calendar.getInstance(); mYear = ca.get(Calendar.YEAR); mMonth = ca.get...

2018-07-27 00:27:35 367

原创 Android与js交互

Android与JS交互就是Android和JavaScript之间相互调用来实现页面的展示,他们之间的桥梁就是Webview   对于Android调用JS代码的方法有2种: 1. 通过WebView的loadUrl() 2. 通过WebView的evaluateJavascript()   这两种方式的区别: 通过loadurl()来调用使用方便,但是他是在没有返回的情况下使用,...

2018-07-27 00:23:18 651

原创 Glide

获取缓存的路径 获取缓存的路径 指是定缓存路径获取缓存的路径 指定缓存路径 with方法 with方法   with方法with Requeswith方法tManagerRetriever.get方法 RequestManagerRetrieRequestManagerRetriever.get方法RequestManagerRetriever.get方法RequestM...

2018-07-27 00:18:21 256

原创 上拉刷新下拉加载

Listview上拉刷新下拉加载是什么 就是android中的一种加载数据的方式 如何实现它 他需要用到三个方法, 分别是 setOnScrollListener滑动监听 onLoad()加载数据用的 pullLoad()刷新数据用到的方法 先要设置头布局headerView; 头布局高度headerViewHeight; 还要给头布局设置图片 在设置底布局footerView; 底布局...

2018-07-27 00:07:08 363

原创 版本迭代

  调用安装程序     File file = new File(Environment.getExternalStorageDirectory(),"six.apk"); Intent intent = new Intent(Intent.ACTION_VIEW); //判读版本是否在7.0以上 if (Build.VERSION.SDK_INT >= 24) {    ...

2018-07-27 00:03:24 1809

原创 Dagger2

先导入依赖 compile 'com.google.dagger:dagger:2.7'  annotationProcessor 'com.google.dagger:dagger-compiler:2.7'     Dagger2     Dagger2 依赖注入框架 在编译期间自动生成代码,负责依赖对象的创建。 依赖注入 依赖注入是一种面向对象的编程方式,它的出现就是为了降低耦...

2018-07-27 00:02:25 213

原创 EventBus

EventBus能够简化各组件间的通信,让我们的代码书写变得简单,能有效的分离事件发送方和接收方(也就是解耦的意思),能避免复杂和容易出错的依赖性和生命周期问题。 主要功能 替代Intent,Handler,BroadCast在线程之间的信息传递。   EventBus 三要素 1  Event 事件,可以是任意类型的对象 2  Subscriber 事件订阅者 OnEvent On...

2018-07-26 23:55:23 304

原创 沉浸式状态栏

//沉浸式状态栏 //首先判断Api版本号是否大于19也就是Android4.4 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { int flagTranslucentStatus = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS; int flagTranslu...

2018-07-25 08:01:54 152

原创 AutoLayout

//屏幕适配AutoLayout //1、添加依赖 implementation 'com.zhy:autolayout:1.4.3' //2、在清单文件中注明你要设计的初始屏幕尺寸 <meta-data android:name="design_width" android:value="1080" /> <meta-data android:name="design_heig...

2018-07-25 07:55:06 685

原创 MapView与ScrollView嵌套时的滑动冲突的解决措施

//写一个类来继承RelativeLayout,它是专门来将MapView包裹起来的 public class MapContainer extends RelativeLayout { // 定义一个SsrollView 将它与Activity的scrollView绑定; private ScrollView scrollView; //三个构造 public MapC...

2018-07-25 07:43:03 981

空空如也

空空如也

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

TA关注的人

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