Android其它新控件

Android其它新控件

欢迎转载,转载请注明原文出处:http://blog.csdn.net/lavor_zl/article/details/51312715,谢谢。
Android其它新控件是指非Android大版本更新时提出的新控件,也非谷歌IO大会提出的新控件,而是谷歌发现市场上某种功能的控件被大量使用,而不定期推出实现该功能的官方控件。Android其它新控件常用的有下面两种。

《Android其它新控件》

1. Drawerlayout(抽屉布局)

抽屉布局的使用比较简单,一般在DrawerLayout下面定义两个视图,第一个视图作为主界面,第二个视图作为抽屉,注意第二个视图要设置android:layout_gravity属性,否则不会作为抽屉,而且我们打开关闭抽屉还和此属性相关。

在xml中定义DrawerLayout

<android.support.v4.widget.DrawerLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/refresh"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="sads" />
    </android.support.v4.widget.SwipeRefreshLayout>

    <LinearLayout
        android:layout_gravity="start"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        >
        <TextView
            android:ems="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="我是抽屉布局的抽屉部分" />
    </LinearLayout>
</android.support.v4.widget.DrawerLayout>  

在java文件中怎么打开,关闭抽屉

        //打开Gravity.START位置的抽屉
        drawerlayout.openDrawer(Gravity.START);
        //关闭Gravity.START位置的抽屉
        drawerlayout.closeDrawer(Gravity.START);  

抽屉关闭状态时:

《Android其它新控件》

抽屉打开状态时:

《Android其它新控件》

2. SwipeRefreshLayout(滑动刷新布局)

SwipeRefreshLayout使用户可以通过垂直滑动手势刷新视图的内容。

在xml中定义SwipeRefreshLayout

 <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/refresh"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <TextView
            android:gravity="center"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="我是主界面部分" />
 </android.support.v4.widget.SwipeRefreshLayout>  

在java中操作SwipeRefreshLayout

        this.refresh = (SwipeRefreshLayout) findViewById(R.id.refresh);
        refresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                Log.i("SwipeRefreshLayout","下拉刷新");
                //do something,刷新视图内容
                refresh.setRefreshing(false);//设置刷新结束
                Log.i("SwipeRefreshLayout","刷新完毕");
            }
        });  

本程序源代码下载:Android其它新控件

    原文作者:lavor
    原文地址: https://www.jianshu.com/p/d154bc447236
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞