轻风起自远东

文能提笔抄答案,武能路霸钩核弹

使用回调接口解决匿名实现Runnable导致的内存泄漏问题

使用回调接口解决匿名实现Runnable内存泄漏的问题 在Android开发中经常会看到这样的代码: public class MyActivity extends Activity { ... new Thread(new Runnable() { @Ov...

2018-07-24 21:45:25

阅读数 943

评论数 1

图片/视频混合选择器的简单实现

仿抖音图片/视频混合选择器 功能介绍 搜索所有视频和图片并混合显示,视频在右下角显示时长,点击时右上角显示当前为第几个选中的图片/视频,取消时补位。 这个选择器是基于RecyclerView来实现的 下面介绍关键类 QueryProcessor QueryProcessor是用...

2018-07-22 21:25:12

阅读数 272

评论数 0

Android 8.0 常见bug

java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation 最近在做一个即时IM通讯的app,在Android8.0版本运行app的时候发现总是crash,logcat里面的...

2018-05-11 14:24:08

阅读数 504

评论数 0

Android中的多线程

Android多线程机制 由于讨论的主要是Android中特有的线程机制和类,因此在此不会再详谈Java中的线程类Thread和Runnable。 Android中可以扮演线程的角色有很多,AsyncTask、IntentService和HandlerThread,AsyncTask的底层实际...

2018-05-10 18:10:21

阅读数 85

评论数 0

Android消息机制

Android消息机制 参考书籍:《Android开发艺术探索——任玉刚》 消息机制概述 Android的消息机制主要指的是Handler的运行机制,Handler的运行又需要MessageQueue和Looper的支撑,因此本博客将分别谈到ThreadLocal、MessageQueu...

2018-05-08 20:37:56

阅读数 87

评论数 0

浅谈Java虚拟机

本博客基于《深入理解Java虚拟机——JVM高级特性与最佳实践》——周志明 前言 终于拿到了众多知乎大佬推荐的JVM神书,可以开始学习Java虚拟机的相关知识了,以前学Java的时候一直都听到很多相关词汇,GC、HotSpot、新生代、老年代、堆、栈、双亲委派模型,但一直没有机会去认真看一...

2018-03-29 22:39:31

阅读数 214

评论数 0

浅谈Activity启动过程

浅谈Activity启动过程 本篇博客参考资料: 探索7.x源码, 全面解析Activity启动框架 (1) 《Android开发艺术探索》——任玉刚 在日常的开发中,我们通常使用startActivity(Intent intent)来启动一个新的Activity,我们能够如此简单的启动...

2018-03-20 23:44:36

阅读数 75

评论数 0

Android Binder机制

本篇博客参考资料: 《Android开发艺术探索》——任玉刚 简单明了,彻底地理解Binder Binder是Android一个非常重要的类,它实现了IBinder接口。从IPC角度来说,Binder是Android中的一种跨进程通信方式;从Android Framework角度来说,Bin...

2018-03-19 21:20:37

阅读数 86

评论数 0

Java算法与数据结构

为了提前准备今年的秋招,差不多开始复习算法与数据结构了,以前学算法的时候是以C语言为基础的,现在很久没碰C语言了,决定这次复习用Java实现,基本上是参考的Java算法神书:《数据结构与算法分析——Java语言描述》。 排序 时间复杂度O(n2)的排序 选择排序 首先在未排序序...

2018-03-18 21:00:55

阅读数 470

评论数 0

Java设计模式

单例模式 本段借鉴于:【Java】设计模式:深入理解单例模式 什么是单例模式 定义:保证一个类仅有一个实例,并提供一个访问它的全局接口。 考虑这样一个应用,读取配置文件的内容。很多应用项目,都有与应用相关的配置文件,这些配置文件很多是由项目开发人员自定义的,在里面定义一些应用重要的...

2018-03-17 12:15:20

阅读数 141

评论数 0

Android多进程通信之AIDL

跨进程开启、停止、绑定、解绑Service 在上一节(Android Service)的学习中我们知道在同一个进程中,不同组件(例如Activity和Service)之间通过IBinder接口进行通信,但是不同进程里的组件是不能通过IBinder进行通信的,为了让不同进程里的组件能够通信我们需要...

2018-03-11 23:41:24

阅读数 65

评论数 0

Android Service

Service的生命周期 Service是Android四大组件之一,它通常用来实现需要在后台进行耗时操作的需求,它的生命周期如下: 可以看到Service的生命周期分成了两条线,左边这条是使用startService()方法启动Service后走的生命周期,右边这条是使用onBind()...

2018-03-11 00:23:54

阅读数 69

评论数 0

Android自定义View

如何自定义控件 自定义属性的声明和获取 测量onMeasure:测量自定义控件的尺寸 绘制onDraw:绘制自定义控件 状态的存储与恢复:在Activity进入后台时,我们需要保存自定义控件的重要状态;当Activity从后台恢复时,我们就可以恢复自定义控件的重要状态,例如文本内容等。 自...

2018-03-08 22:28:40

阅读数 67

评论数 0

Android动画详解

一、逐帧动画 逐帧动画就是将一张一张的图片逐帧播放以达到动画效果,在Android里面实现帧动画非常简单。 右键点击drawable文件,选择Drawable Resource File,输入名称loading,点击确定,完成如下代码: <?xml version=...

2018-03-03 18:55:32

阅读数 101

评论数 0

JSTL和EL表达式

1、EL表达式 EL表达式介绍:Expression Language (表达式语言),目的是替代JSP页面中的复杂代码 EL表达式语法:${变量名} 下面通过一个实例来了解EL表达式的用法: 我们首先在一个JSP页面(1.jsp)中定义一个表单,其中有用户名和年龄两个输入框,表单数据会...

2018-03-02 14:58:10

阅读数 72

评论数 0

微信小程序零碎知识点

1、在wxml中只有用text标签包裹的文本才能在手机上长按选中 2、小程序的自适应单位是rpx,一般情况下不要使用px 3、每一个页面都是一个文件夹,下面的wxml、wxss、json、js文件最好和文件夹名称一致,这样在app.json中配置页面的时候只需一行即可 例如有一个we...

2018-02-19 15:46:25

阅读数 731

评论数 0

Java Web零碎知识点及常见问题

1、表单中有文件上传项时,不能用常用的request.getParameter()获取表单中的值 此时需要使用第三方jar包fileupload包和io包里面相关的类来完成对于表单值的获取,jar包的下载地址: https://commons.apache.org/proper/commo...

2018-02-14 19:40:39

阅读数 99

评论数 0

Servlet基础知识

一、什么是Servlet 实际上JSP的底层就是Servlet,但是JSP是嵌在HTML页面中的Java程序段,而Servlet是纯Java程序。 Servlet主要用于业务逻辑处理,Jsp用于展示内容。 二、第一段Servlet程序 1、新建一个Java Web项目,在src文件夹下...

2018-02-13 14:19:03

阅读数 72

评论数 0

使用SAX解析器读写XML文档

一、JAXP JAXP概述 JAXP作用 JAXP提供的与解析XML相关的类 二、使用SAX解析器解析XML文档 SAX采用事件机制的方式来解析XML文档,这是一种快速读写XML数据的方式 使用SAX解析器解析XML文档流程 JAXP为SAX解析器提供两组API,...

2018-02-13 11:11:03

阅读数 134

评论数 0

JSP基础知识

一、什么是JSP 二、Eclipse下动态Web项目的结构 三、JSP程序的执行过程 用户首先向服务器发起访问jsp文件的请求,web容器读取jsp文件后,生成对应的java文件(准确的说是Servlet源文件),web容器再将java文件编译成class文件,最后由web容...

2018-02-08 15:26:41

阅读数 123

评论数 0

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