先看一下Android悬浮按钮点击回到顶部的效果:
FloatingActionButton是Design Support库中提供的一个控件,这个控件可以轻松实现悬浮按钮的效果
首先,要在项目中使用这个悬浮按钮就要先把design这个包导入项目
gradle中加入依赖
compile 'com.android.support:design:25.0.0'
接下来就是在xml中使用:
我这里是放置一个listView模拟返回顶部
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto"> <ListView android:id="@+id/listview_main" android:layout_width="match_parent" android:layout_height="match_parent" /> <android.support.design.widget.FloatingActionButton android:id="@+id/floating_btn_main" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignParentBottom="true" android:src="@mipmap/top" app:elevation="10dp" android:layout_margin="15dp"/> </RelativeLayout>
其中 app:elevation=”10dp”是给FloatingActionButton指定一个高度,高度越高,投影的范围越大,但是投影效果越淡,反之则反
接下来是MainActivity中的使用:
package com.duanlian.floatingbtn; import android.support.design.widget.FloatingActionButton; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.ListView; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private ListView mListView; private FloatingActionButton mFloatBtn; private MyListViewAdapter mAdapter; private List<String> mList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); } private void initView() { mListView = (ListView) findViewById(R.id.listview_main); mFloatBtn = (FloatingActionButton) findViewById(R.id.floating_btn_main); mList = new ArrayList<>(); for (int i = 0; i < 30; i++) { mList.add(i + ""); } mAdapter = new MyListViewAdapter(this, mList); mListView.setAdapter(mAdapter); //悬浮按钮的点击事件的监听 mFloatBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //listView返回到顶部 mListView.smoothScrollToPosition(0); } }); } }
怎么样,简单吧。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。