Waylan Punch

WP


  • Home

  • Categories

  • Tags

  • Archives

  • About

  • Commonweal 404

  • Search

Drag and Swipe with RecyclerView Part Two

Posted on 2016-07-11 | | Visitors:

原文

RecyclerView的拖放和滑动特效


第二部分:手柄、网格与自定义动画

Read more »

Drag and Swipe with RecyclerView Part One

Posted on 2016-07-11 | | Visitors:

原文

RecyclerView的拖放和滑动特效


第一部分:基础ItemTouchHelper实例

Read more »

SHRINK APPS WITH GRADLE FOR-ANDROID

Posted on 2016-07-11 | | Visitors:

原文

SHRINK APPS WITH GRADLE FOR ANDROID

通过Gradle构建工具压缩Android应用

作者:David Tiago Conceição

译者:Waylan Punch

Read more »

颜色转换工具类

Posted on 2016-07-03 | | Visitors:

颜色转换工具类


import java.util.regex.Pattern;
import android.graphics.Color;

public class ColorUtil {
    /**
     * 获取资源中的颜色转换成16进制
     * @param color
     * @return
     */
    public static int getResourcesColor(int colorid) {
        int ret = 0x00ffffff;
        try {
            ret = MyApp.getContext().getResources().getColor(colorid);
        } catch (Exception e) {
        }
        return ret;
    }
Read more »

RecyclerView滑动显示/隐藏控件

Posted on 2016-07-03 | | Visitors:

复写RecyclerView.OnScrollListener监听事件,使RecyclerView具有滑动显示/隐藏功能

import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;

/**
 * Created by pc on 2016/7/1.
 */
public abstract class HidingScrollBottomListener extends RecyclerView.OnScrollListener {

    private static final int HIDE_THRESHOLD = 20;//滑动隐藏的阈值

    private int mScrolledDistance = 0;//滑动距离
    private boolean mControlsVisible = true;//控件的显示状态

    /**
    * 向下滑动隐藏控件, 向上滑动显示控件
    * dy, 向下滑动为正值, 向上滑动为负值
    */
    @Override
    public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
        super.onScrolled(recyclerView, dx, dy);

        int firstVisibleItem = ((LinearLayoutManager) recyclerView.getLayoutManager()).findFirstVisibleItemPosition();

        if (firstVisibleItem == 0) {//如果已经滑动到最顶端
            if(!mControlsVisible) {
                onShow();
                mControlsVisible = true;
            }
        } else {//当前Item不是第一条
            if (mScrolledDistance > HIDE_THRESHOLD && mControlsVisible) {//向下滑动
                onHide();
                mControlsVisible = false;
                mScrolledDistance = 0;
            } else if (mScrolledDistance < -HIDE_THRESHOLD && !mControlsVisible) {//向上滑动
                onShow();
                mControlsVisible = true;
                mScrolledDistance = 0;
            }
        }
        if((mControlsVisible && dy>0) || (!mControlsVisible && dy<0)) {
            mScrolledDistance += dy;
        }
    }

    public abstract void onHide();//在onHide()方法里面实现控件隐藏功能
    public abstract void onShow();//在onShow()方法里面实现控件显示功能
}
Read more »

Android Code Standard

Posted on 2016-07-03 | | Visitors:

An Android Code Standard Document, It’s A Public Resource, You Might Find It On My Company’s Home Site Or Not.

1.避免坏习惯

1.1 代码重复几乎是最常见的坏习惯

代码重复往往来自于copy-and-paste的编程风格。

1.2 代码很长的方法

一个方法应当具有自我独立的意图,不要把几个意图放在一起。

Read more »

Collection接口与Collections类

Posted on 2016-07-03 | | Visitors:

Collection接口与Collections类

  • [1]java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。
Read more »

ArrayList通过ensureCapacity方法提高效率

Posted on 2016-07-03 | | Visitors:

每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向 ArrayList 中不断添加元素,其容量也自动增长。并未指定增长策略的细节,因为这不只是添加元素会带来分摊固定时间开销那样简单。

Read more »

安装AndroidStudioSuperPlugin插件

Posted on 2016-06-07 | | Visitors:

AndroidStudioSuperPlugin是一个集成插件,包含若干子插件:

AndroidStudioSuperPlugin

Read more »

LeanCloud Learning Course

Posted on 2016-06-05 | | Visitors:
  1. 获取第一行

    AVQuery<Studentq = AVObject.getQuery(Student.class);
    Student student = q.getFirst();
    
Read more »
1…4567
Waylan Punch

Waylan Punch

Keep Calm And Code On.

66 posts
2 categories
66 tags
RSS
GitHub E-Mail Weibo StackOverflow
Links
  • StackOverflow
  • LeanCloud
  • 云栖社区
  • GitHub
  • 掘金网
  • 知乎
© 2014 — 2019 Waylan Punch
Powered by Hexo
|
Theme — NexT.Mist v5.1.4