- 博客(15)
- 收藏
- 关注
原创 AIDL
AIDL概述:它是用于某个service与多个应用程序组件之间进行跨进程通信,从而可以实现多个应用程序共享一个Service的功能,从而进一步实现进程间的通信(也就是一个远程服务)AIDL的客户端与服务端:服务端:服务端首先要创建一个service(这个服务的binder继承AIDL接口.stub,重写接口中的所有方法后可以通过传参,或者return语句进行信息的传递)用来监听客户端的...
2018-08-31 12:01:09 187
原创 线程与线程池
线程与线程池 什么是线程, 提到线程就要说一下进程, 进程: 进程就是正在执行的程序,(任务管理器) 线程: 是程序执行的一条路径,一个进程中可以包含多条线程, 举个例子,你打开你的微信,这叫打开了一个进程,你在微信里跟微信好友视频聊天就是开启了一个线程, 两者之间的关系一个进程中至少有一个线程,当然也可以有多条线程一条线程一定会在进程里面...
2018-08-31 12:00:21 154
原创 数据结构
数据结构是计算机存储和组织数据的的方式数组在Java中,数组是用来存放同一种数据类型的集合,注意只能存放同一种数据类型。数组的局限性分析:①、插入慢,对于无序数组,上面我们实现的数组就是无序的,即元素没有按照从大到小或者某个特定的顺序排列,只是按照插入的顺序排列。无序数组增加一个元素很简单,只需要在数组末尾添加元素即可,但是有序数组却不一定了,它需要在指定的位置插入。②、查找快,...
2018-08-31 11:29:18 162
原创 头像选择
//初始化一个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 419 1
原创 城市选择器
//先导入依赖implementation 'liji.library.dev:citypickerview:1.1.0'//初始化城市选择器private CityPicker cityPicker;//初始化public void initCityPicker() { //滚轮文字的大小//滚轮文字的颜色//省份滚轮是否循环显示//城市滚轮是...
2018-07-27 00:34:06 766
原创 日历
调用系统的日历//定义一个值保存状态然后三个变量分别表示年、月、日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 302
原创 Android与js交互
Android与JS交互就是Android和JavaScript之间相互调用来实现页面的展示,他们之间的桥梁就是Webview 对于Android调用JS代码的方法有2种:1. 通过WebView的loadUrl()2. 通过WebView的evaluateJavascript() 这两种方式的区别:通过loadurl()来调用使用方便,但是他是在没有返回的情况下使用,...
2018-07-27 00:23:18 557
原创 Glide
获取缓存的路径获取缓存的路径指是定缓存路径获取缓存的路径指定缓存路径with方法with方法 with方法withRequeswith方法tManagerRetriever.get方法RequestManagerRetrieRequestManagerRetriever.get方法RequestManagerRetriever.get方法RequestM...
2018-07-27 00:18:21 215
原创 上拉刷新下拉加载
Listview上拉刷新下拉加载是什么就是android中的一种加载数据的方式如何实现它他需要用到三个方法,分别是setOnScrollListener滑动监听onLoad()加载数据用的pullLoad()刷新数据用到的方法先要设置头布局headerView;头布局高度headerViewHeight;还要给头布局设置图片在设置底布局footerView;底布局...
2018-07-27 00:07:08 311
原创 版本迭代
调用安装程序 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 1761
原创 Dagger2
先导入依赖compile 'com.google.dagger:dagger:2.7' annotationProcessor 'com.google.dagger:dagger-compiler:2.7' Dagger2 Dagger2 依赖注入框架 在编译期间自动生成代码,负责依赖对象的创建。依赖注入依赖注入是一种面向对象的编程方式,它的出现就是为了降低耦...
2018-07-27 00:02:25 190
原创 EventBus
EventBus能够简化各组件间的通信,让我们的代码书写变得简单,能有效的分离事件发送方和接收方(也就是解耦的意思),能避免复杂和容易出错的依赖性和生命周期问题。主要功能 替代Intent,Handler,BroadCast在线程之间的信息传递。 EventBus 三要素1 Event 事件,可以是任意类型的对象2 Subscriber 事件订阅者OnEventOn...
2018-07-26 23:55:23 268
原创 沉浸式状态栏
//沉浸式状态栏//首先判断Api版本号是否大于19也就是Android4.4if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {int flagTranslucentStatus = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;int flagTranslu...
2018-07-25 08:01:54 101
原创 AutoLayout
//屏幕适配AutoLayout//1、添加依赖implementation 'com.zhy:autolayout:1.4.3'//2、在清单文件中注明你要设计的初始屏幕尺寸<meta-dataandroid:name="design_width"android:value="1080" /><meta-dataandroid:name="design_heig...
2018-07-25 07:55:06 619
原创 MapView与ScrollView嵌套时的滑动冲突的解决措施
//写一个类来继承RelativeLayout,它是专门来将MapView包裹起来的public class MapContainer extends RelativeLayout {// 定义一个SsrollView 将它与Activity的scrollView绑定; private ScrollView scrollView;//三个构造 public MapC...
2018-07-25 07:43:03 924
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人