Android开发( 右侧选择分类 )
php

MySQL时间戳和时间的获取/相互转换/格式化

获取当前时间戳select unix_timestamp();等同于select unix_timestamp(now());获取当前时间select now();时间转时间戳select unix_timestamp('2018-01-15 09:45:16');时间戳转时间select from_unixtime(1515980716);时间戳格式化SELECT from_unixtime(1
458 人浏览
cnbzlj

Android 7.0 文件读取适配,适配相机及裁剪图片

Android 7.0 打开文件的错误,调用相机及裁剪图片,还有动态权限Github代码码云链接华为荣耀V8,小米5,小米6,R9s,测试通过,其他机子没机会测试。。。。核心代码7.0以上除了相机和裁剪图片,只要是打开文件的,uri都要更改,包括更新安装包,记得要改uri,不然解析异常,但裁剪图片outputUri有点不一样if (Build.VERSION.SDK_INT >= Build
457 人浏览
tinuv

StreamAPI中常用的方法

StreamAPI中常用的方法filter()lambda函数传入一个参数,返回符合条件的publicstaticvoidmain(String[]args){ List<String>strings=newArrayList<String>(){ { add("test1"); add("test2"); add(&quo
455 人浏览
cnbzlj

Android EventBus使用详解(二)

这篇文章介绍EventBus的高级用法(线程模式,粘性事件,事件优先级),EventBus的基础用法,请移步到: Android EventBus使用详解(一) 线程模式EventBus支持订阅者方法在不同于发布事件所在线程的线程中被调用。你可以使用线程模式来指定调用订阅者方法的线程。EventBus总共支持5种线程模式: ThreadMode.POSTING 订阅者方法将在发布事件所
454 人浏览
tinuv

RxJava操作符(二)

distinct操作符从词义可以知道,他是筛选出不同的发射的元素给观察者,很简单如:importio.reactivex.*; importio.reactivex.functions.Consumer; importio.reactivex.functions.Function; importjava.util.ArrayList; importjava.util.List; publ
454 人浏览
android00

git-命令行常用命令集锦(

1、git clone从远程主机克隆一个版本库$gitclone<版本库的网址>该命令会在本地主机生成一个目录,与远程主机的版本库同名。如果要指定不同的目录名,可以将目录名作为git clone命令的第二个参数。$gitclone<版本库的网址><本地目录名>git clone支持多种协议,除了HTTP(s)以外,还支持SSH、Git、本地文件协议等,例如:$g
453 人浏览
kotlin

Kotlin编码风格

此页面包含当前 Kotlin 语言的编码风格一、命名风格如果拿不准的时候,默认使用Java的编码规范,比如:使用驼峰法命名(并避免命名含有下划线)类型名以大写字母开头方法和属性以小写字母开头使用 4 个空格缩进公有函数应撰写函数文档,这样这些文档才会出现在 Kotlin Doc 中二、冒号类型和超类 之间的冒号前要有一个空格,而实例和类型之间的冒号前不要有空格:interface Foo<o
451 人浏览
cnbzlj

android removeRule的使用

今天,简单讲讲android里如何使用removeRule去动态改变布局。最近在修改代码时,发现横竖屏切换时需要动态的设置控件的RelativeLayout.LayoutParams,之前自己是每次切换就new一个RelativeLayout.LayoutParams,但是这样在效率上比较低。所以自己想优化时直接获取控件的RelativeLayout.LayoutParams然后动态的改变属性,这
448 人浏览
android01

Android源码解析(二十二)-- Toast的加载绘制流程

前面我们分析了Activity、Dialog、PopupWindow的加载绘制流程,相信大家对整个Android系统中的窗口绘制流程已经有了一个比较清晰的认识了,这里最后再给大家介绍一下Toast的加载绘制流程。其实Toast窗口和Activity、Dialog、PopupWindow有一个不太一样的地方,就是Toast窗口是属于系统级别的窗口,他和输入框等类似的,不属于某一个应用,即不属于某一个
446 人浏览
cnbzlj

android ListView 局部刷新

今天,简单讲讲android如何对ListView 进行局部刷新。之前,自己做的ListView 发现刷新频率太高了,而且很多界面上看不到的数据改变时调用Adapter.notifyDataSetChanged()也会导致整个ListView 进行刷新。其实我们只需在界面元素改变时刷新界面那个改变的item就可以。如果不停刷新这个界面,会导致效率减低。所以在网上搜索了资料,最终解决了问题。平时在写
440 人浏览
android01

Android源码解析之(五)-- Android之IntentService

什么是IntentService?简单来说IntentService就是一个含有自身消息循环的Service,首先它是一个service,所以service相关具有的特性他都有,同时他还有一些自身的属性,其内部封装了一个消息队列和一个HandlerThread,在其具体的抽象方法:onHandleIntent方法是运行在其消息队列线程中,废话不多说,我们来看其简单的使用方法:定义一个IntentS
440 人浏览
tinuv

Java正则表达式简单学习

与正则表达式相关的类Pattern类Pattern 模式,代表匹配的模式,Pattern没有公共的构造方法,只有一个私有的构造方法privatePattern(Stringp,intf)通常使用静态方法compile()来生成一个Pattern对象publicstaticPatterncompile(Stringregex)compile()方法的参数就是一个正则表达式,正则表达式待会再说.Mat
439 人浏览
bbsmax

深度递归必须知道的尾调用(Lambda)

引导语本文从一个递归栈溢出说起,像大家介绍一下如何使用尾调用解决这个问题,以及尾调用的原理,最后还提供一个解决方案的工具类,大家可以在工作中放心用起来。递归-发现栈溢出现在我们有个需求,需要计算任意值阶乘的结果,阶乘我们用 n!表示,它的计算公式是:n! = 123……(n-1)n,比如说 3 的阶乘就是 123。对于这个问题,我们首先想到的应该就是递归,我们立马写了一个简单的递归代码://阶乘计
436 人浏览
tinuv

反射学习(一)

理论学习Class类关于类的抽象,或者说,Class类描述了一个类,每个类中都有一个Class对象,在Java中,类是现实世界的一种抽象,或者说是一种描述,比如Person类,可以根据需求将人抽象成具有性别,年龄属性,能吃饭(方法)的一种实体,同样Class类也抽象了Java类中的一些特点.每一个类中都有一个Class对象,可以通过如下方法获得一个Class类的实例ClassstringClass
434 人浏览
cnbzlj

android 调用系统播放器

今天,简单讲讲android如何调用手机自带的播放器。昨天,从服务器下载一个AVI的视频,下载后需要进行播放,所以想调用系统自带的播放器。但是由于很少用到,所以自己当时不知道怎么写,于是在网上查找资料,最终是解决了问题。这里记录一下。一.网上的常见调用播放器代码(存在问题)String url = "http://192.168.0.1/1.mp4" Intent intent = new In
430 人浏览
tinuv

Kotlin学习

定义包,引入包packageme.tinuv importjava.util.*这个与Java是相似的.定义变量与Java不同,kotlin的类型都是写在后面的.vala:Int=10100100 valb=10也可以省略,kotlin会自动推断,但我不知道是不是所有类型都可以自动推断.自动推断必须要有初始值valc:Int c=100注意:定义只读局部变量使⽤关键字 val 定义.只能
429 人浏览
cnbzlj

Android中Bitmap对象和字节流之间的相互转换

android 将图片内容解析成字节数组,将字节数组转换为ImageView可调用的Bitmap对象,图片缩放,把字节数组保存为一个文件,把Bitmap转Byte import java.io.BufferedOutputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.
426 人浏览
android

Android EditText 实现软键盘搜索按钮

记录一下如何把软键盘的回车按键变成搜索按键这个估计大部分人也经常用的到这个直接xml文件设置 EditText 三个属性android:imeOptions="actionSearch" android:singleLine="true" android:maxLines="1"网上有些直接用 android:imeOptions="actionSearch"这样是不够的 而 android:
424 人浏览
cnbzlj

Okhttp3基本使用

I.简介HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一个高效的HTTP客户端,它有以下默认特性:支持HTTP/2,允许所有同一个主机地址的请求共享同一个socket连接连接池减少请求延时透明的GZIP压缩减少响应数据的大小缓存响应内容,避免一些完全重复的请求当网络出现问题的时候OkHttp依然坚守自己的职责,它会自动恢复一般的连
417 人浏览
gityuan

如何自学Android

引言:知乎上我曾回答了 自学编程一年,压力过大,该怎么办? - Gityuan 的回答,之后有不少知乎朋友私信或Email给我,希望能讲讲学习Android的心得。业内有不少同仁写过关于如何自学的文章,本文则是从自身的学习经历和经验,可能并不是适合每一个人,写出来仅供大家参考。看到很多人提问非科班该如何学习编程,其实科班也基本靠自学。有句话叫“师傅领进门修行靠个人”,再厉害的老师能教你的东西都是很
410 人浏览