android
dc_user
向往成为大牛
展开
-
对象拷贝工具类(深拷贝)
public class CloneUtil { private CloneUtil() { throw new AssertionError(); } public static <T extends Serializable> T clone(T object) throws IOException, Class...原创 2019-10-25 13:43:53 · 967 阅读 · 0 评论 -
SuperTextView
文章目录1、功能描述2、效果图3、如何使用3.2.1、布局中使用3.2.2、在代码中使用3.2.3、属性介绍3.1、 Android Studio导入方法3.2、 项目中如何使用4、 实现原理4.1、需求分析4.2、代码封装4.3、总结1、功能描述你还在为类似设置页面的样式(图+文字+图)每次写一大堆布局文件而烦恼吗?快来看看SuperTextView吧,这里有你想要实现的任何样式,而你要做的仅仅...转载 2018-06-26 09:49:43 · 194 阅读 · 0 评论 -
ToastUtil工具
public class ToastUtils { private ToastUtils() { } private static Toast mToast; public static void show(String msg) { if (mToast == null) { mToast = Toast.make...原创 2018-07-03 14:57:30 · 319 阅读 · 0 评论 -
视频播放器
Android播放器基础封装库PlayerBase简述视频播放是我们开发中比较常见的场景。这两年关于视频方面的热度不断提升,可以说前两年是直播年,今年是小视频年,各种短视频应用铺天盖地。对于视频的业务场景也越来越丰富,功能也越来越多。对于我们开发来说播放相关组件的代码变得也越来越复杂,管理维护成本也越来越高,面对不断迭代的业务,我们需要一种有效的方案来应对这种频繁的业务变化。这几年一直在做视频相关...转载 2018-06-28 10:28:42 · 2273 阅读 · 0 评论 -
RxJava
前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: RxJ...转载 2018-07-17 14:44:32 · 182 阅读 · 0 评论 -
6.0动态加载权限用PermissionGen
android 6.0 新增加了运行时的动态添加权限,在此介绍一个第三方库,PermissionGen,可以很方便简洁的增加 6.0权限首先给大家上 PermissionGen 库地址:https://github.com/lovedise/PermissionGen使用:1.引用库: 在 app gradle 中引入: compile 'com.lovedise:permissio...原创 2018-07-13 15:00:43 · 1338 阅读 · 0 评论 -
全局log管理
1、书写全局log管理类public class PLog { public static boolean LOG_OPEN = false; public static void d(String tag, String message){ if(!LOG_OPEN) return; Log.d(tag,messa...原创 2018-07-13 15:07:56 · 320 阅读 · 0 评论 -
Viewpager嵌套问题
重写外部viewpager的canScroll()方法/** * 当需要双层嵌套的viewpager时,需要重写外部viewpager的canScroll方法 */public class CustomViewPager extends ViewPager { public CustomViewPager(Context context) { s...原创 2018-08-02 13:54:44 · 255 阅读 · 0 评论 -
检查网络连接状态和修改网络连接状态
/** * 检测网络是否连接 */private boolean checkNetworkState() { boolean flag = false; //得到网络连接信息 manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); //去进行判断网络是否连...原创 2018-10-25 17:31:37 · 2110 阅读 · 0 评论 -
PermissionsTools
权限请求工具类public class PermissionsTools { public static PermissionsTools.Builder with(Activity activity) { return new Builder(activity); } public static class Builder { p...原创 2019-03-19 17:09:18 · 268 阅读 · 0 评论 -
自定义指定位置显示的弹窗
public class SmartPopupWindow extends PopupWindow { private int mWidth = ViewGroup.LayoutParams.WRAP_CONTENT; private int mHeight = ViewGroup.LayoutParams.WRAP_CONTENT; private float mAl...原创 2019-03-22 14:07:03 · 984 阅读 · 0 评论 -
RxJava简介
前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: RxJav...转载 2018-06-25 14:59:03 · 284 阅读 · 0 评论 -
Retrofit2简介
本文注目录:Retrofit入门Retrofit注解详解Gson与ConverterRxJava与CallAdapter自定义Converter自定义CallAdapter其它说明前言本文中的Retrofit均指代Retrofit2.0。本文涉及到的代码以及测试使用的接口可在Github上找到。测试接口服务器在 server 项目下,直接运行 RESTServer.main() 即可启动测试服务器...转载 2018-06-25 14:36:43 · 286 阅读 · 0 评论 -
网络请求工具类
public class HttpManager { private static Retrofit retrofit; private static Retrofit retrofitQueryApk; private static Retrofit retrofitDownloadApk; private static HttpManager instance...原创 2018-06-25 14:31:50 · 239 阅读 · 0 评论 -
App启动检查更新下载安装apk
现在很多的App中都会有一个检查版本的功能。例如斗鱼TV App的设置界面下: 当我们点击检查更新的时候,就会向服务器发起版本检测的请求。一般的处理方式是:服务器返回的App版本与当前手机安装的版本号进行对比。(1)如果服务器所返回的版本号大于当前App版本号那么此时手机所安装的App不是最新版。可以提示用户升级。(2)如果不大于当前版本号,可以提示用户为最新版本:...原创 2018-06-21 16:03:15 · 2597 阅读 · 1 评论 -
Android开发中的Intent.Action
本文介绍Android中Intent的各种常见作用。1 Intent.ACTION_MAINString: android.intent.action.MAIN标识Activity为一个程序的开始。比较常用。Input:nothingOutput:nothing <activity android:name=".Main" android:label="@string/app_name"&g...转载 2018-06-21 09:27:45 · 258 阅读 · 0 评论 -
实时数据的折线图
Android图表控件MPAndroidChart——曲线图LineChart(多条曲线)动态添加数据发现最新的MPAndroidChart和以前版本的使用有一些差距,就写下了现在新版的使用方法 相关文章:Android图表控件MPAndroidChart的简单介绍(MPAndroidChart3.0)Android图表控件MPAndroidChart——曲线图LineChar...原创 2018-06-20 17:05:47 · 3037 阅读 · 0 评论 -
Gson解析中的Typetoken获取数据类型
情景引入: 在使用GSON解析一段JSON数组时,需要借助TypeToken将期望解析成的数据类型传入到fromJson()方法中,如下:List<Person> people = gson.fromJson(jsonData, new TypeToken<List<Person>>(){}.getType());1 ...原创 2018-06-20 16:52:32 · 5335 阅读 · 0 评论 -
日期util
public class DateTimeUtil { static SimpleDateFormat format; /** * 日期格式:yyyy-MM-dd HH:mm:ss **/ public static final String DF_YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; /...原创 2018-06-20 16:23:24 · 198 阅读 · 0 评论 -
listview添加头部
一、 概述:在代码中使用 listView.addHeaderView(…) 方法可以在ListView组件上方添加上其他组件,并且连结在一起像是一个新组件。如果多次使用 .addHeaderView(…) ,则最先添加的组件在最上方,按添加的先后顺序由上到下罗列。 此时listView 的 position = 0 的位置对应的是view1,而不再是原来listView中的第一条了。如下图所示:...转载 2018-06-19 17:43:32 · 1781 阅读 · 0 评论 -
本地文件操作类
public class LocaHostUtils { //获取当前的时间 public static String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(new Date()); //这个路径是 当前路径/OPE/ public sta...原创 2018-06-15 12:37:47 · 172 阅读 · 0 评论 -
SFTP工具
public class SFTPUtils { private String TAG = "SFTPUtils"; private String host; private String username; private String password; private int port = 22; private ChannelSftp sf...原创 2018-06-15 12:36:34 · 2030 阅读 · 0 评论 -
截取字符串(去掉前n个字符)
public static String truncateHeadString(String origin, int count) { if (origin == null || origin.length() < count) { return null; } char[] arr = origin.toCharArray(); ch...原创 2018-06-15 12:20:30 · 20872 阅读 · 1 评论 -
Xutils3的基本使用
Xutils3在原来的基础上的改动之后还是比较方便我们使用的,这里只是简单的说了一下其使用方法!原创 2016-11-06 14:32:29 · 1563 阅读 · 0 评论 -
NavigationView
导航菜单的制作方式多种多样,网上也有各种炫酷效果的具体实现方式,那么今天我主要是想来说说Google在2015年io大会推出的NavigationView的具体使用方式。原创 2016-11-03 20:06:54 · 313 阅读 · 0 评论 -
RecyclerView多布局的简单实现
一、在做项目时,我们经常会遇到如下面的 在一个窗口中,不同行的布局不同,有的是一行一个条目,有的是一行两个条目,还有四个的,还有更多,这里是数量不同,还有的是不同行里条目数量相同而布局不同,都可以用recyclerview的多布局来实现,下面就简单实现布局和数量都不同的recycle人view的多布局实例1、使用recyclerview要到包在gra...原创 2016-11-12 19:16:23 · 5836 阅读 · 2 评论 -
Listview 头部悬停效果的实现
在android App中最常用的控件之一Listview基本上每个app都用的上,其使用频率高,所以就有更多的人想用它来实现更多的效果,比如listview的多布局,listview的添加头部,底部和头部悬停等效果都是最基础的!下面就用最简洁的语言来讲述一下listview的头部悬停效果的使用:整个主要布局就是一个ListView,如果listview的上面有内容且高度比较高,可...原创 2016-11-03 22:07:02 · 2372 阅读 · 2 评论 -
Intent讲解
我们总结了几个Android中重要组件,相信大家对于这些组件已经有了清晰的认识,我们就来看一下几个常见的操作:启动一个Activity:Context.startActivity(Intent intent);启动一个Service:Context.startService(Intent service);绑定一个Service:Context.bindService(Intent service...原创 2018-06-21 16:06:48 · 212 阅读 · 0 评论