- 博客(25)
- 资源 (2)
- 收藏
- 关注
原创 使用SlidingTabLayout实现仿头条标题切换
不使用tablayout,实现这种效果,今天偶然看到谷歌官方的例子,就git下研究了一下,地址:https://github.com/googlesamples/android-SlidingTabsBasic首先自定义了2个类;/* * Copyright (C) 2013 The Android Open Source Project * * Licensed under the Apac
2017-03-10 19:06:54
1407
原创 实现带清除效果的EditText
package sun.com.myhandler;import android.content.Context;import android.graphics.drawable.Drawable;import android.support.v7.widget.AppCompatEditText;import android.text.Editable;import android.tex
2017-03-09 18:37:26
508
原创 升级android studio2.3走过的坑,gradle太贱!
手贱把 studio升级到2.3版本,然后项目就废了! 一直提示: 于是乎,我就翻墙上了https://gradle.org/install把最近版的下载了gradle-3.4.1-all.zip.解压缩到C:\Users\XXX.gradle\wrapper\dists目录下,重新打开项目,还是如此.搞的很无语,心中一万个XX.查了很多网站都找不到原因, 后来发现要把gradle-3.4
2017-03-04 10:35:59
835
原创 自定义CicrleDrawable
public class CicrleDrawable extends Drawable { private Paint mPaint; private int mWidth; private Bitmap mBitmap; public CicrleDrawable(Bitmap bitmap) { this.mBitmap = bitmap;
2017-03-03 12:08:29
418
原创 DataBinding使用指南
一、认识DataBindingDataBinding,2015年IO大会介绍的一个框架,字面理解即为数据绑定,是Google对MVVM在Android上的一种实现,可以直接绑定数据到xml中,并实现自动刷新。好处:去掉大部分UI相关代码(比如findViewById、setOnClickListener、setText等) xml变成UI的唯一真实来源,数据绑定也直接发生在xml 二、DataB
2017-03-01 17:06:53
321
原创 一个打印Log日志,好用的工具logger
首先在build.gradle中添加:compile 'com.orhanobut:logger:1.15'尽管Google在大部分安卓版本中推荐使用HttpURLConnection,但是这个类相比HttpClient实在是太难用,太弱爆了。 OkHttp是一个相对成熟的解决方案,据说Android4.4的源码中可以看到HttpURLConnection已经替换成OkHttp实现了。所以我们更有
2017-02-23 23:50:07
618
原创 一个点击滚动展开的控件
首先看下XML文件<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/widget33" android:layout_width="fill_parent" android
2017-02-23 23:38:16
553
转载 一个好用的轮播图开源框架RollViewPager
github地址:https://github.com/Jude95/RollViewPager 支持无限循环。 触摸时会暂停播放,直到结束触摸一个延迟周期以后继续播放。 看起来就像这样。指示器可以为点可以为数字还可以自定义,位置也可以变。 依赖compile 'com.jude:rollviewpager:1.4.6'使用<com.jude.rollviewpager.RollPagerVie
2017-02-14 11:18:51
854
原创 处理频繁点击问题, 如果两次点击小于500毫秒则不予以响应
public class ClickUtils { private static final String TAG = "ClickUtils"; private static long lastClickTime = 0L; private static final boolean isDebug = true; private static final String
2016-06-18 10:53:34
952
原创 RxJava基础练习(3)
/** * RxBinding * RxBinding 是 Jake Wharton 的一个开源库,它提供了一套在 Android 平台上的基于 RxJava 的 Binding API。 * 所谓 Binding,就是类似设置 OnClickListener 、设置 TextWatcher 这样的注册绑定对象的 API。 * 举个设置点击监听的例子。使用 RxBinding ,可以把事件监
2016-06-17 17:00:59
647
原创 RxJava基础练习(2)
//—————————————4: Action0和Action1 讲解————————————————————– /** * 肯定有同学对Action0和Action1很困惑,就像当初我刚看到那样子; * 那就听听扔物线给大家讲一下: * * MaLin:扔物线大哥,你能够给我们讲解一下Action0和Action1是什么,以及他们之间的区
2016-06-17 17:00:03
379
原创 RxJava基础练习(1)
//概念解释 //1:被观察者,事件源:它决定什么时候触发事件以及触发怎样的事件 //2:观察者:它决定事件触发的时候将有怎样的行为 //3:订阅 private void method0() { //1:被观察者,事件源 //概念解释:RxJava 使用 Observable.create() 方法来创建一个 Observable ,并为它定义
2016-06-17 15:54:48
582
原创 android 常用代码
/** * 四舍五入取整 */ public int doubleToInt(Double d) { BigDecimal inter = new BigDecimal(d).setScale(0, BigDecimal.ROUND_HALF_UP); return inter.intValue(); }
2016-06-07 17:06:38
331
原创 BottomSheetBehavior底部弹出窗口的用法
需要的依赖: compile ‘com.android.support:appcompat-v7:23.2.1’ compile ‘com.android.support:design:23.2.1’ 效果图如下: 一直出现的问题是弹出窗口只显示部分,很烦人,浪费半个下午终于解决了 下面看代码:package com.example.mybottomdialog;import andr
2016-04-09 15:47:06
5061
转载 仿微信语音聊天2
package com.example.myrecorder;import android.media.*;import android.media.AudioManager;import java.io.IOException;public class MediaManager { private static MediaPlayer mMediaPlayer; private s
2016-04-09 11:05:40
451
转载 仿微信语音聊天
分析思路录音的三种状态 AudioRecorderButton State : STATE_NORMAL , STATE_RECORDING, STATE_WANT_TO_CANCEL 录音对话框状态 Style :RECORDING ,WANT_TO_CANCEL,TOO_SHORT AudioManager prepare(); cancel(); release(); get
2016-04-09 11:03:24
826
原创 自定义View
我们改怎么做呢?1,设计需要的属性 建立atts.xml文件<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="Topbar"> <attr name="titlea" format="string" /> <attr name="titleColor" fo
2016-02-21 23:29:29
372
原创 ContentResolver查询手机联系人
ContentResolver cr = getContentResolver(); Cursor c = cr.query(Contacts.CONTENT_URI, new String[]{Contacts._ID, Contacts.DISPLAY_NAME}, null, null, null); //根据联系人ID查询出联系人的电话 if (
2016-02-20 16:47:15
454
原创 Android属性动画赏析
为什么有Animation了,还要有Animator呢? Animation有局限性,看下面代码. XML布局:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schem
2016-01-31 01:00:57
366
原创 MPAndroidChart Library Wiki翻譯
起步交互Y轴 YAxis是垂直轴数据和其他信息的容器类,每一个 Line-, Bar-, Scatter 和 CandleStickChart 都有一个左侧和右侧YAxis对象,分别负责左侧的Y轴和右侧的Y轴内容。雷达图(RadarChart) 只有一个YAxis. 每个Y轴都默认enabled,并且会被画出来。
2016-01-28 15:38:26
365
原创 折线图制作
package com.zhong.chart;import android.graphics.Color;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import com.github.mikephil.charting.charts.LineChart;import com.github
2016-01-22 00:03:28
432
原创 volley加载图片 及imageloader使用
xml文件<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="mat
2016-01-16 19:05:18
730
原创 Volley 的用法 总结
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-01-16 16:12:11
503
原创 集合的总结
1 常用对象 String、StringBuffer和StringBuilderString类的特点: 字符串对象一旦被初始化就不会被改变。quals方法:String类复写了Object中的equals方法,建立了String类自己的判断字符串对象是否相同的依据。只比较字符串内容,不比较地址。1、获取 获取字符串中字符的个数(长度)int lengt
2015-07-03 19:20:41
319
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅