分类 Android 下的文章

SwipeRefreshLayout 载入时自动刷新


swipeRefreshLayout = (SwipeRefreshLayout) mView.findViewById(R.id.refresh_layout);
onRefreshListener = new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                loadPage = 0;
                mAdapter.cleanData();
                mAdapter.notifyDataSetChanged();
                Log.v("LishSearch", "开始加载数据");
            }
        };
        swipeRefreshLayout.setOnRefreshListener(onRefreshListener);
//显示加载
        swipeRefreshLayout.post(new Runnable(){
            @Override
            public void run() {
                swipeRefreshLayout.setRefreshing(true);
            }});
        onRefreshListener.onRefresh();


自定义ProgressDialog


起步

主要实现方法为使用Dialog,将布局改写为ProgressDialog

编码

先编写主要界面布局my_lodding_dialog.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:wheel="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/dialog_view"
    >
    <com.pnikosis.materialishprogress.ProgressWheel
        android:id="@+id/progress_wheel"
        android:layout_width="80dp"
        android:layout_height="80dp"
        android:layout_centerHorizontal="true"
        wheel:matProg_barColor="@color/mainColor"
        wheel:matProg_progressIndeterminate="true"
        />
</LinearLayout>

其中com.pnikosis.materialishprogress.ProgressWheel 为github开源组件,下载地址


RecycleView使用(一)


RecyclerView架构,高度的解耦,异常的灵活.通过设置它提供的不同LayoutManager,ItemDecoration , ItemAnimator实现令人瞠目的效果。

起步

  • 控制其显示方式,通过布局管理器LayoutManager
  • 控制Item间的间隔(可绘制),通过ItemDecoration
  • 控制Item增删的动画,通过ItemAnimator
  • 控制点击、长按事件,得自己通过接口回调的方式进行

    Android Studio配置

    在build.gradle中的dependencies添加

    compile 'com.android.support:recyclerview-v7:22.2.1'


浅析Android Material Design Support Library(三)——FloatingActionButton


Google最近为了让开发者更好的更规范的应用Material Design设计思想,特意放出了android support design library,里面含有更多Material Design的标志性组件,其中最常用的就是那个圆形按钮,叫做Floating Action Button,可以简称为FAB。

举个栗子

<android.support.design.widget.FloatingActionButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                app:borderWidth="0dp"
                app:rippleColor="@color/mainColor"
                app:backgroundTint="@color/mainColor"
                app:elevation="6dp"
                app:pressedTranslationZ="12dp"
                android:src="@drawable/plus"
                />


Activity间的切换动画


最近看material design设计,可惜的谷歌官方提供的Activity Transition仅支持API21及以上,这就意味着大部分的低版本的手机就不发使用这个api了,那么我们要怎么解决这个问题呢?接下来本文将主要介绍,如何在开启activity和关闭activity时添加动画效果,不会太突兀的一下子切换到另一个activity,也显得比较平滑。喜欢的朋友可以参考一下。

其实呢?在Android2.0开始在Activity增加了一个方法:

public void overridePendingTransition (int enterAnim, int exitAnim)

其中: enterAnim 定义Activity进入屏幕时的动画 exitAnim 定义Activity退出屏幕时的动画 注意:

  • overridePendingTransition 方法必须在startActivity()或者 finish()方法的后面。
  • 在startActivity()后面添加效果,就是开启的时候效果。
  • 在finish()方法的后面后面添加效果,就是在用户按返回键的时候的效果。