自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

君羊

众生畏果,菩萨畏因!

  • 博客(65)
  • 资源 (23)
  • 问答 (1)
  • 收藏
  • 关注

原创 Android项目框架搭建(二)

接上一篇 Android项目框架搭建(一),本次把剩下的3垮补充完整。5.基类(BaseActivity/BaseFragment/BaseApplication)6.Retrofit(最流行的网络请求框架)+RxJava(链式编程风格+异步)7.程序崩溃界面处理5.基类(BaseActivity/BaseFragment/BaseApplication)BaseActivity.jav...

2019-05-22 14:21:31 5902 12

原创 Android项目框架搭建(一)

你能

2019-05-20 23:26:28 18583 6

转载 使用charles在电脑上抓取手机上的数据包

先声明一下本人也是新手小白,如果有哪里说错了还请各位大人批评指正【抱拳】安装charles电脑安装charles证书设置手机网络代理手机安装charles证书安装charles这个我就不说了,在网上搜安装步骤,各路大神已经介绍的十分详细了。(我当时就是这么做的~)电脑安装charles证书安装完charles后,我们要先给电脑安装证书,步骤如下: 点击“安装证书”,下一...

2019-01-29 17:16:18 1769 3

原创 Android中String.xml中空格转义字符不起作用

看图:为了优化体验,需要将“日期”和上面的提示语言保持上下对齐—简单来说就是要在“日期”中间加一个空格.上网一搜,千篇一律全都是空格转义字符— (别忘了分号)。然而改完之后,发现不管加了多少个 都不行,现象就是:“日期”中间多了一丁点的空格,而不是一个汉字宽度相当的空格。于是再找,下面才是王道: <string name="statistics_date_...

2019-01-28 16:41:37 6360 1

原创 Android 屏幕适配方案

android中官方建议的屏幕适配方式,通过根据不同的分辨率在工程的res文件夹下建立不同的尺寸文件夹,每个文件夹下都建立dimens.xml文件。然后根据不同的尺寸在dimens.xml文件夹中分别计算配置不同的dp或者sp单位。开发中发现,android屏幕适配需要用到很多的尺寸,每个尺寸都建立dimens.xml问价。每个文件中的数值都要按照比例去计算,一个一个拿着计算器去计算吗?这样太麻烦...

2019-01-26 17:14:45 2072 4

原创 Android将图片路径转换成URi

/*** * 将指定路径的图片转uri * @param context * @param path ,指定图片(或文件)的路径 * @return */public static Uri getMediaUriFromPath(Context context, String path) { Uri mediaUri = Med...

2019-01-26 15:35:40 7521 1

原创 android中fragment的显示和隐藏

private void switchFragment() {Bundle bundle = getIntent().getExtras();int categoryInt = bundle.getInt(“category”, -1);if (categoryInt == -1) {LogUtils.e(TAG, “categoryInt error.”);return;}mFra...

2019-01-26 15:32:46 6151

转载 getDimension()、getDimensionPixelSize()和getDimensionPixelOffset()的区别

今天写代码的时候,需要从资源文件中读取一个长度值,用来设置控件的宽高,误以为getDimension()返回的就是资源里定义的dp值,后来发现不是我理解的那样。下面介绍一下getDimension()、getDimensionPixelSize()和getDimensionPixelOffset()的区别; 先看我在资源中的定义:<dimen name="guide_first_...

2019-01-04 10:39:46 272

原创 TabLayout中如何设置tab不选中

在日常开发中,经常遇到需要设置tab不选中的需求,如下图,在点击右侧时间选择框的时候,需要将左侧的tab的选中状态给重置掉。由于TabLayout没有类似unSelect()的接口,因此我们可以通过更改tab的指示线和tab文字颜色来实现。下面提供重置tab状态和高亮显示tab的方法。 高亮显示tab //highlight the color of tab text &am...

2019-01-04 10:25:04 3522

原创 使用MPAndroidChart绘制多条折线图和饼状图部分问题备录

饼状图饼状图基本使用 /** * 绘制PieChart(饼图) * * @param entries */ private void drawPieChart(ArrayList<PieEntry> entries) { mColors.clear(); mColors.add(Color.pa...

2019-01-03 19:11:37 789

原创 自定义View绘制饼状图和环状图

最近工作中遇到一个需求,就是将不同年龄段数据以饼状图或者环状图的形式展示出来。于是利用android自定义的知识封装一个自定义View,方便日后使用,特此记录。 效果图如下1.饼状图1.环状图主要强调以下3部分1.value中添加attr.xml属性文件2.数据源3.自定义饼图或者环形图 1.value中添加attr.xml属性文件value/attr...

2019-01-03 18:45:22 735

原创 Android打造自定义通用popWindow

日常android开发中经常会用到popWindow。因此封装一个可自定义view,可设置弹出动画,可设置大小的通用popWindow显得尤为重要。 效果图如下:通用PopWindow分为如下3部分:1.自定义popWindow2.popWindow的辅助类3.popWindow的弹出动画1.自定义popWindow/* * 通用的popWindow */publ...

2018-12-19 17:13:12 2747 2

原创 Android打造通用的TitleBar

日常android项目开发中,各种Activity的界面通常都会有一套TitleBar样式,但是各个界面又可能具有差异性。很显然,我们不可能每一个界面都去写一套TitleBar.因此封装一个通用的TitleBar是很有必要的。<?xml version="1.0" encoding="utf-8"?><Fra

2018-12-19 15:38:58 1481 2

原创 Android事件分发机制详解

-------------------------------------------------------------------------------------------------1.TitileBar(Activity) activity::::-----------dispatchTouchEvent-------------down activity::::------...

2018-10-26 15:23:07 356 1

转载 Activity、View、Window的理解一篇文章就够了

要了解这三者之间的关系,我们带着问题通过分析源码一步一步来揭开它们的神秘面纱!文章有点长,首先要理解Activity、View、Window,我提出了一些问题,这篇文章可以解答如下问题: 1、为什么要设计Activity、View、Window? 2、Activity工作过程是什么样的?(理解Activity) 3、Window是什么?它的职能是什么? 4、View跟Window有什么联...

2018-10-23 15:55:47 373

原创 Ubuntu下录制屏幕并转换成gif

   日常工作中,经常需要将录制的视频(.mp4/.ogv/avi/…)转换成gif动图。随便举个例子,同学们在使用博客记录东西的时候常常需要演示应用程序在手机上的运行效果,通常这些效果都是被以视频格式来进行保存的。而往往markdown编辑器不允许上传视频,因此我们常常需要将视频格式的文件先转换成 gif动图,再进行上传展示。分两步走。第一步:录制视频视频的来源通常都是通过屏幕录制。而视...

2018-10-19 16:06:38 734

原创 Ubuntu下adb找不到设备问题解决记录

说在前面:  这个问题遇到的比较多,尤其是公司新来的一些小同事,特此记录一下。  我们在ubuntu系统下可能会遇到adb devices搜索不到设备的情况,尤其是刚拿到一台新测试设备的情况下。但是是手机上可以识别usb连接。这个时候我们先要确认以下两点:1.开发者模式是否打开2.usb调试是否打开   不同手机的打开开发者选项的的入口可能会有些许差异,但都大同小异。下面以小米手机为...

2018-10-19 10:19:06 5664

转载 Android Studio签名打包的两种方式

注:给我们自己开发的app签名,就代表着我自己的版权,以后要进行升级,也必须要使用相同的签名才行。签名就代表着自己的身份(即keystore),多个app可以使用同一个签名。如果不知道签名是啥意思,请自行百度哦。在eclipse中签名的方法是:选中工程,邮件选择"export-android-export android application",1、方式1:通过Android Studio进...

2018-10-18 17:59:15 202

原创 编写Android.mk文件备录

前言:   由于目前供职于机器人公司,从事基于android系统的软件开发,因此常常需要进行源码编译(当然也可以基于机器人的sdk和android studio环境进行开发)。  进行源码编译,少不要编写Android.mk文件。通常的操作,就是基于前人的Android.mk文件修修改改,即可满足需求。特此将之前编写的一个Android.mk文件拿出来,做次备录。  当然了,前提建议大家先...

2018-10-18 10:43:07 1011

原创 Android中res/drawable(mipmap)/xxxx.png的Uri和url的转换

 声明:下列方法已经经过验证,可用Uri------>url. /** * res/drawable(mipmap)/xxx.png::::uri---->url * * @return */ private String imageTranslateUri(int resId) { Resources r ...

2018-10-17 22:42:44 6164

原创 Android实现可拖拽的悬浮框

效果布局文件:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:

2018-10-10 15:33:49 3721

原创 史上最全的使用RecyclerView实现下拉刷新和上拉加载更多

前言:           纵观多数App,下拉刷新和上拉加载更多是很常见的功能,但是谷歌官方只有一个SwipeRefreshLayo

2018-10-06 18:52:57 4947 1

原创 Android自定义带有联动时间选择器(年,月,日,周,十,分)备录

国际惯例,先上图后说话。

2018-10-05 17:11:43 3293 1

原创 GreenDao一对多关系操作

 概述        GreenDAO是一个对象关系映射(ORM)的框架,能够提供一个接口通过操作对象的方式去操作关系型数据库

2018-09-24 13:49:42 5603 3

原创 Android使用正则表达式进行关键词匹配

dasv

2018-09-23 23:24:57 2962

原创 数字选择器NumberPicker使用教程

       数字选择器NumberPicker是Android3.0之后引入的一个控件,比较常用,比如说手机常用的闹钟,可以选择小时和分钟,如果你需要兼容3.0之前版本,GitHub上有开源的项目,具体的下载地址ht

2018-09-10 00:51:01 17271 2

原创 MVP模式使用示例详解

什么是MVP模式?     这个MVP可不是腾讯游戏《王者荣耀》中的MVP。我们今天要讨论的MVP其实同MVC一样,是一种编程模式和思想,也许更准确地讲是一种架构。 MVP和MVC的区别&nbsp

2018-09-09 22:46:31 13316

原创 ubuntu中颜色拾取器的安装以及16进制ARGB值在线转颜色

http://www.yuangongju.com/colorhttps://blog.csdn.net/xiao_yuanjl/article/details/79671214

2018-09-09 13:07:47 1839

原创 主线程中Thread.Sleep()是否会导致ANR?

public class MainActivity extends AppCompatActivity { private static final String TAG = "MainActivity"; @BindView(R.id.btn_test) Button btnTest; @BindView(R.id.tv_tes

2018-09-09 12:37:24 5877

转载 Android Retrofit 2.0 的详细 使用攻略(含实例讲解)

在Android网络请求库中,Retrofit是当下最热的一个网络请求库,转载的博文目前是当前针对Retrofit讲得最为全面和易懂的好文,因此及时转载,便于后来的初学者方便查看。前言在Andrroid开发中,网络请求十分常用而在Android网络请求库中,Retrofit是当下最热的一个网络请求库Github截图今天,我将献上一份非常详细Retr...

2018-09-02 20:19:28 403

原创 Android can only be built by versions 3.81 and 3.82 问题解决备录

在进行android4.4源码编译的时候,报错: Android can only be built by versions 3.81 and 3.82显而易见,主要是make版本不匹配造成的。解决方案如下:1.下载各种版本的make下载地址:ftp://ftp.gnu.org/gnu/make/2.安装make3.8.2的安装步骤: zq@zq:# tar -zxvf...

2018-08-22 11:48:39 514 2

原创 自定义AlertDialog指定布局大小和设置全屏

/** * 弹出充值缴费的二维码 */ private void createRechargeDialog() { AlertDialog.Builder builder = new AlertDialog.Builder(mActivity); LayoutInflater inflater = LayoutInflater....

2018-08-22 11:21:18 5047 2

原创 Android 实现连续两次点击或连续多次点击退出应用

前言:  日常开发过程中,经常会遇到“连续点击两次退出应用”的需求(和“连续点击多次”的需求(如:手机从设置中进入开发者选项)。直接上代码: 双击退出: private long exitTime = 0; /** * 连续点击2次退出 */ public void exitAfterTwice() { if ...

2018-08-22 10:29:18 3229 2

原创 Handler导致的内存泄露分析以及内存泄露检测工具LeakCanary的集成

单刀直入,来吧!引入: private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessa...

2018-08-15 17:38:26 684

转载 Android Butterknife使用方法总结

前言:ButterKnife是一个专注于Android系统的View注入框架,以前总是要写很多findViewById来找到View对象,有了ButterKnife可以很轻松的省去这些步骤。是大神JakeWharton的力作,目前使用很广。最重要的一点,使用ButterKnife对性能基本没有损失,因为ButterKnife用到的注解并不是在运行时反射的,而是在编译的时候生成新的class。项目...

2018-08-09 11:24:44 326

原创 RecyclerView将指定项滑动到顶部显示

前言:一般我们用 Recycleview.smoothScrollToPosition(0)滑动到顶部,具有滚动效果,但是如果我们想滚动到任意指定位置,那么smoothScrollToPosition()就不能保证所指定item位于屏幕顶部,比如无法将处于屏幕中部的item滑动到屏幕顶部。那么一下提供下我解决的方法。解决方法按照效果是否平滑分为两种:(至于平滑和非平滑的效果的不同,类比下面...

2018-08-08 13:54:10 12017 4

原创 TabLayout+ViewPager实现tab切换

声明:此文章主要来自:TabLayout+ViewPager轻松搞定Tab栏切换 ,原作者写的很详细。但是为了加深印象,以及对其中的部分现象进行更好的演示,特此重新写一遍。前言:在项目开发中很多场景都会碰到tab栏切换的效果,实现的思路也有很多种,tabhost+fragment和 radionbtton+viewpager等方式都可以实现,其中关于“RadionButton+Vie...

2018-08-07 17:46:31 1486

原创 ubuntu16.04安装完成之后的那些事儿

前言:    不管你是做C语言还是Android开发。linux环境是离不了的,大家在新安装完成之后还应该安装些什么软件来方便我们的使用呢?接下来会给大家做些介绍。声明:    接下来给大家推荐的这样操作步骤或者软件链接都是经过本人实践过n遍的。如果不行,请直接留言。我会第一时间帮你解决。ubuntu16.04安装完成之后,你很开心。迫不及待的想看电影,结果界面提示请先安装Fl...

2018-08-02 16:08:19 2238

原创 adb shell下提示read-only file system解决办法(经过验证)

命令号下输入:#adb shell#mount终端输出结果:127|root@rk3288:/ # mountrootfs / rootfs ro,relatime 0 0tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0devpts /dev/pts devpts rw,seclabel,relatime,mod...

2018-07-30 14:21:55 34556 4

原创 关于RecyclerView如何设置空布局(setEmptyView)的几种方式

前言:小伙伴在使用ListView的时候,知道listView提供了一个setEmpty(View view)用来处理当获取不到数据的时候的界面处理—–用于做些数据为空的提示等等。伴随着RecyclerView的出现,鉴于RecyclerView的可拓展性强且功能更强大等特性。很快俘获了不少屌丝的芳心。但是我们也很遗憾的发现RecyclerView并没有提供像listView那样的setE...

2018-07-30 13:24:02 19195 7

Charles抓包工具破解版

附件为Charles抓包工具破解版;主要考虑到安装官网下载的试用版为30天,每天30分钟,到时间的话会通知你让你重启charles。

2019-01-29

android屏幕适配,自动生成不同的dimens.xml详解

android中官方建议的屏幕适配方式,通过根据不同的分辨率在工程的res文件夹下自动建立不同的尺寸文件夹,每个文件夹下都自动生成dimens.xml文件。

2019-01-08

android 5.0+录屏(音频+视频)示例demo

android 5.0+手机屏幕录制使用示例代码,包含音频+视频

2019-01-08

自定义饼状图和环形图

此作为博客(自定义View绘制饼状图和环状图)的示例代码

2019-01-03

ubuntu下安装fiddler爬虫工具

由于fiddler官网上的 fiddler下载链接仍然停留在2014版,且经常无法下载。特此提供下载的fiddler工具包。(ps:由于pc端和手机端app会对url接口等数据进行加密,所以经常会抓包失败,不过完全可以体验一下抓包流程,网上教程很对,随机推荐一个:)

2018-10-18

(android实现可拖拽的悬浮框)使用示例

此作为博客(android实现可拖拽的悬浮框)的使用示例,如有问题,请留言

2018-10-08

(史上最全的使用RecyclerView实现下拉刷新和上拉加载更多)示例demo

此作为博客(史上最全的使用RecyclerView实现下拉刷新和上拉加载更多)的示例代码,如有问题请留言

2018-10-06

Android自定义带有联动时间选择器(年,月,日,周,十,分)备录示例代码

此作为博客(Android自定义带有联动时间选择器(年,月,日,周,十,分)备录)的示例代码如有问题,请留言

2018-10-05

博客(GreenDao一对多关系操作)的示例demo

此示例作为博客(GreenDao一对多关系操作)的示例demo,如有问题请留言

2018-09-24

作为ButterKnife的基本使用示例

此作为ButterKnife的基本使用示例,如果小伙伴有问题请留言

2018-08-09

(TabLayout+ViewPager实现tab切换)使用示例

此作为博客(TabLayout+ViewPager实现tab切换)的使用示例,如有问题请留言。

2018-08-07

ubuntu系统(64位)下微信安装包

此作为ubuntu系统(64位)下微信安装包,如有问题请留言

2018-08-02

关于RecyclerView如何设置空布局(setEmpty)的几种方式示例代码

此作为博客(关于RecyclerView如何设置空布局(setEmpty)的几种方式)的示例代码,如有问题请留言

2018-07-30

RecyclerView基本使用示例

此作为博客(RecyclerView的基本用法、注意事项以及如何提高开发效率)的示例代码,仅供参考

2018-07-24

打造Android通用的自定义AlertDialog提示框使用示例

此作为博客(打造Android通用的自定义AlertDialog提示框)的使用示例,如有问题,请留言

2018-07-12

Android自定义popWindow教程示例

此作为博客(Android自定义popWindow教程)的示例,如有问题请留言

2018-06-28

( Android 获取屏幕宽高的3种方式以及获取控件宽高等的方法 )的示例demo

此作为( Android 获取屏幕宽高的3种方式以及获取控件宽高等的方法 )的示例demo,如有问题请留言

2018-06-28

Android自定义View之画圆环(进阶篇:圆形进度条)的示例代码

此作为Android自定义View之画圆环(进阶篇:圆形进度条)的示例代码,如有疑问,请留言

2018-06-22

Android自定义view之画圆环(手把手教你如何一步步画圆环)的示例

此示例作为csdn博客(Android自定义view之画圆环(手把手教你如何一步步画圆环)的示例)的示例Demo,仅供参考

2018-06-19

Android Studio环境下使用ActionBar示例Demo

此示例作为csdn博客(Android Studio环境下ActionBar的使用教程以及如何解决遇到的问题)的测试Demo,仅供参考

2018-06-08

ViewPager+Fragment实现底部导航栏目(左右滑动/点击切换)的示例Demo

作为csdn博客(ViewPaager+Fragment实现底部导航栏目(左右滑动/点击切换)的示例代码,如有问题请留言

2018-06-05

imagezoom实现图片缩放示例

代码作为csdn博客(最简单的实现图片的放大和缩小(就像操作ImageView一样))示例,如有问题博客留言

2018-05-18

GreenDao示例源码

代码作为csdn博客(最短时间学会使用GreenDao3.2(方便小白快速上手))示例,如有问题博客留言

2018-05-12

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

TA关注的人

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