Material Design之Snackbar

来源:互联网 发布:淘宝有哪些好的布料店 编辑:程序博客网 时间:2024/05/16 23:46

转载请标明出处:http://blog.csdn.net/wu_wxc/article/details/47264691
本文出自【吴孝城的CSDN博客】

Snackbar是带有动画的提示条,出现在屏幕底部,可添加按钮,可滑动删除,如果不操作1.5S或2.75S后会自动消失,与Toast相似,但不能同时显示多个。

使用Snackbar要先添加design library依赖。

打开build.gradle(Module:app),

加入

compile 'com.android.support:design:22.2.0'

然后重新制作一下


需要编辑的项目如下


Snackbar要基于一个布局显示,所以先给它写一个简单的textview布局,就用textview做点击按钮

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent">    <TextView        android:id="@+id/id_Snackbar"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_centerInParent="true"        android:textSize="30sp"        android:text="@string/hello_world" /></RelativeLayout>

接下来是主程序的编写

MainActivity.java

package cn.wuxiaocheng.snackbar;import android.os.Bundle;import android.support.design.widget.Snackbar;import android.support.v7.app.ActionBarActivity;import android.view.View;import android.widget.TextView;public class MainActivity extends ActionBarActivity {    private TextView tv;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initSnackbar();    }    private void initSnackbar() {        tv = (TextView) this.findViewById(R.id.id_Snackbar);        tv.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                //这里的tv是snackbar显示所在的页面。                Snackbar.make(tv, "天呐,我竟然出错了!!!", Snackbar.LENGTH_LONG).setAction("再来", new View.OnClickListener() {                    @Override                    public void onClick(View v) {                        tv.setText("这里可以自己改成想要执行的任务。");                    }                }).show();            }        });    }}

其中

.setAction("再来", new View.OnClickListener() {                    @Override                    public void onClick(View v) {                        tv.setText("这里可以自己改成想要执行的任务。");                    }                })

是给Snackbar添加点击按钮和点击执行的



运行效果如下图


1 0
原创粉丝点击