android 高级之旅 (七) CoordinatorLayout 的基本用法
来源:互联网 发布:jenkins php 自动部署 编辑:程序博客网 时间:2024/06/14 00:34
先看效果图
实现这个效果主要是看布局文件:如下代码
<?xml version="1.0" encoding="utf-8"?><android.support.design.widget.CoordinatorLayout 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/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="org.sang.a8_3coordinatorlayout.MainActivity"> <!-- CoordinatorLayout内部整体上分为两大块: 1.AppBarLayout 2.一个滚动控件(目前支持NestedScrollView/RecyclerView) --> <android.support.design.widget.AppBarLayout android:id="@+id/appbar_layout" android:layout_width="match_parent" android:layout_height="180dp"> <!-- CollapsingToolbarLayout 是一个可折叠控件 app:layout_scrollFlags 表示头布局的折叠策略,一共有五种取值: 1.scroll 表示当底部滑动控件开始滑动时,头部跟着滑动 2.enterAlways 表示一旦底部滑动控件向下滑动时,就露头 3.enterAlwaysCollapsed 当底部滑动控件见顶的时候,头部向下滑动 4.exitUntilCollapsed表示头部折叠到最小高度时就不再折叠(最小高度指Toolbar的高度) 5.snap 当手指松开后,头部会就近折叠 app:contentScrim="@color/colorPrimary" 设置ToolBar的颜色 app:title="test2" 设置头布局的title --> <android.support.design.widget.CollapsingToolbarLayout android:layout_width="match_parent" android:layout_height="180dp" app:collapsedTitleGravity="right" app:contentScrim="@color/colorPrimary" app:expandedTitleGravity="right|bottom" app:layout_scrollFlags="scroll|enterAlwaysCollapsed|exitUntilCollapsed|snap" app:paddingEnd="24dp" app:title="test2"> <!-- app:layout_collapseMode="parallax" 表示ImageView的折叠策略 app:layout_collapseParallaxMultiplier="" 表示视觉乘数,取值0~1 0表示ImageView头部折叠 1表示ImageView底部折叠 越靠近0,头部折叠越快 app:layout_collapseMode="pin" 表示折叠完成后,最终停靠在头部的控件 --> <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="centerCrop" android:src="@drawable/p9" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.7"/> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" app:title="test"></android.support.v7.widget.Toolbar> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text"/> </android.support.v4.widget.NestedScrollView> <!-- app:layout_anchor="" 表示FAB停靠时的参考控件 app:layout_anchorGravity="right|bottom" 表示FAB在参考控件的哪个位置 --> <android.support.design.widget.FloatingActionButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_input_add" app:fabSize="normal" app:layout_anchorGravity="right|bottom" app:layout_anchor="@id/appbar_layout"/></android.support.design.widget.CoordinatorLayout>
代码中 注释已经写得比较清楚了,主要包括 CoordinatorLayout、AppBarLayout、CollapsingToolbarLayout、Toolbar、NestedScrollView、FloatingActionButton等几个控件的嵌套和属性的设置。
记得在values的styles.xml文件中
<item name="windowActionBar">false</item>
MainActivity 中就两行代码搞定:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); }}
ok 到此。。
阅读全文
0 0
- android 高级之旅 (七) CoordinatorLayout 的基本用法
- android 高级之旅 (二 )xUtils3 基本用法
- android 高级之旅 (五) VideoView 和 Vitamio的基本用法
- android 高级之旅 (一)网络加载框架volley基本用法
- android特性之CoordinatorLayout用法探析实例
- CoordinatorLayout高级用法-自定义Behavior
- CoordinatorLayout高级用法-自定义Behavior
- CoordinatorLayout高级用法-自定义Behavior
- CoordinatorLayout高级用法-自定义Behavior
- CoordinatorLayout高级用法-自定义Behavior
- CoordinatorLayout结合Behavior高级用法
- CoordinatorLayout高级用法-自定义Behavior
- android学习之路(三)高级组件之图片切换器<ImageSwicther/>以及final关键字的基本用法
- Android学习之七牛(二)——初始化设置和上传文件基本用法
- Android高级之xUtils框架(四):DBUtils的用法
- Android高级之xUtils框架(一):ViewUtils的用法
- Android高级之xUtils框架(四):DBUtils的用法
- Android进阶之Gradle的高级用法
- MQTT入门篇
- c#上传图片到服务器
- vsftpd
- k-means中的邻近度函数
- 8种基本数据类型
- android 高级之旅 (七) CoordinatorLayout 的基本用法
- c++顺序容器原理
- 二维数组
- MySQL-数据类型介绍
- tensorflow编程: Running Graphs
- 134. Gas Station
- 可执行文件的加载
- microsoft visual studio 2010 的一些快捷键
- 工具函数(JAVA)---判断url是否为网络地址