64、具有过渡动画效果的布局Layout( 2 )

【 CoordinatorLayout-与手势完美结合的滑动视图 】

【 AppBarLayout-可以随手势滑动的AppBar 】

 1 <android.support.design.widget.CoordinatorLayout
 2     xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:app="http://schemas.android.com/apk/res-auto"
 4     android:id="@+id/root_layout"
 5     android:layout_width="match_parent"
 6     android:layout_height="match_parent"
 7     android:orientation="vertical">
 8
 9     <android.support.design.widget.AppBarLayout
10         android:layout_width="match_parent"
11         android:layout_height="wrap_content">
12
13         <!--
14         使用 Toolbar 作为一个标题栏
15
16         app:layout_scrollFlags="scroll|enterAlways":
17         当向上混动的时候,Toolbar会移出屏幕,只要向下滑动,就会显示Toolbar。
18
19         app:layout_scrollFlags="scroll|enterAlwaysCollapsed":
20         当向上混动的时候,Toolbar会移出屏幕,向下滑动时,滑动到第一个的时候才会显示Toolbar。
21
22         app:layout_scrollFlags="scroll|exitUntilCollapsed":
23         不管向上还是向下移动,Toolbar都不会滑出屏幕。
24         另外:如果加上,android:minHeight="20dp"的时候。
25         当向上滑动时候,Toolbar移出屏幕,直到变成最小高度,
26         向下滑动时,滑动到第一个的时候才会显示Toolbar
27         -->
28         <android.support.v7.widget.Toolbar
29             android:id="@+id/toolbar"
30             android:layout_width="match_parent"
31             android:layout_height="?attr/actionBarSize"
32             android:background="#77db93"
33             android:minHeight="20dp"
34             app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
35             app:layout_scrollFlags="scroll|exitUntilCollapsed" />
36     </android.support.design.widget.AppBarLayout>
37
38     <!-- 与手势完美结合的滑动视图 -->
39     <android.support.v4.widget.NestedScrollView
40         android:layout_width="match_parent"
41         android:layout_height="match_parent"
42         app:layout_behavior="@string/appbar_scrolling_view_behavior">
43         <LinearLayout
44             android:layout_width="match_parent"
45             android:layout_height="wrap_content"
46             android:orientation="vertical">
47             <ImageView
48                 android:layout_width="wrap_content"
49                 android:layout_height="wrap_content"
50                 android:src="@drawable/ic_launcher" />
51             ............
52             <ImageView
53                 android:layout_width="wrap_content"
54                 android:layout_height="wrap_content"
55                 android:src="@drawable/ic_launcher" />
56         </LinearLayout>
57     </android.support.v4.widget.NestedScrollView>
58
59     <android.support.design.widget.FloatingActionButton
60         android:id="@+id/fab_btn"
61         android:layout_width="wrap_content"
62         android:layout_height="wrap_content"
63         android:layout_gravity="bottom|right"
64         android:layout_margin="10dp"
65         android:src="@drawable/ic_launcher"
66         app:fabSize="normal" />
67 </android.support.design.widget.CoordinatorLayout>
 1 <resources>
 2     <!-- values/styles.xml -->
 3     <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
 4         <!-- Customize your theme here. -->
 5         <item name="android:windowActionBar">false</item>
 6         <item name="android:windowNoTitle">true</item>
 7         <item name="windowActionBar">false</item>
 8         <item name="windowNoTitle">true</item>
 9     </style>
10 </resources>
 1 package com.example.com.designdemo;
 2
 3 import android.os.Bundle;
 4 import android.support.design.widget.CoordinatorLayout;
 5 import android.support.design.widget.FloatingActionButton;
 6 import android.support.design.widget.Snackbar;
 7 import android.support.v7.app.AppCompatActivity;
 8 import android.support.v7.widget.Toolbar;
 9 import android.view.View;
11
12 public class MainActivity2 extends AppCompatActivity {
14     private FloatingActionButton fab_btn = null;
15     private CoordinatorLayout root_layout = null;
16     private Toolbar toolbar = null;
17
18     @Override
19     protected void onCreate(Bundle savedInstanceState) {
20         super.onCreate(savedInstanceState);
21         setContentView(R.layout.activity_main2);
22
23         toolbar = (Toolbar) this.findViewById(R.id.toolbar);
24         setSupportActionBar(toolbar);
25
26         root_layout = (CoordinatorLayout) this.findViewById(R.id.root_layout);
27         fab_btn = (FloatingActionButton) this.findViewById(R.id.fab_btn);
28         fab_btn.setOnClickListener(new View.OnClickListener() {
29             @Override
30             public void onClick(View v) {
31                 Snackbar.make(root_layout, "我出来了", Snackbar.LENGTH_LONG)
32                         .setAction("知道了", new View.OnClickListener() {
33                             @Override
34                             public void onClick(View v) {
36                             }
37                         }).show();
39             }
40         });
41
42     }
44 }

使用 Toolbar 作为一个标题栏

app:layout_scrollFlags="scroll|enterAlways":
当向上混动的时候,Toolbar会移出屏幕,只要向下滑动,就会显示Toolbar。

app:layout_scrollFlags="scroll|enterAlwaysCollapsed":
当向上混动的时候,Toolbar会移出屏幕,向下滑动时,滑动到第一个的时候才会显示Toolbar。

app:layout_scrollFlags="scroll|exitUntilCollapsed":
不管向上还是向下移动,Toolbar都不会滑出屏幕。
另外:如果加上,android:minHeight="20dp"的时候。当向上滑动时候,Toolbar移出屏幕,直到变成最小高度,
         向下滑动时,滑动到第一个的时候才会显示Toolbar

【 Collapsing Toolbars-可以伸缩的ToolBar 】

时间: 2024-08-09 19:00:48

64、具有过渡动画效果的布局Layout( 2 )的相关文章

63、具有过渡动画效果的布局Layout

下面,下来看一个Demo的效果,代码如下: <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/root_layout" android:layout_width="match_parent"

jQuery和CSS3全屏带过渡动画效果的模态窗口插件

animatedModal.js是一款效果非常炫酷的jQuery和CSS3全屏带过渡动画的模态窗口特效插件.该模态窗口插件和animate.css完美结合,你可以使用animate.css中的任何动画效果来制作该模态窗口的过渡动画效果. 在线演示:http://www.htmleaf.com/Demo/201503031453.html 下载地址:http://www.htmleaf.com/jQuery/Lightbox-Dialog/201503031452.html

165在屏幕中实现过渡动画效果

效果如下: ViewController.h 1 #import <UIKit/UIKit.h> 2 3 @interface ViewController : UIViewController 4 @end ViewController.m 1 #import "ViewController.h" 2 3 @interface ViewController () 4 - (void)layoutUI; 5 - (UIImageView *)nextView; 6 - (v

iOS开发——动画篇Swift篇&amp;动画效果的实现

Swift - 动画效果的实现 在iOS中,实现动画有两种方法.一个是统一的animateWithDuration,另一个是组合出现的beginAnimations和commitAnimations.这三个方法都是类方法. 一,使用animateWithDuration来实现动画 (1)此方法共有5个参数: duration:动画从开始到结束的持续时间,单位是秒 delay:动画开始前等待的时间 options:动画执行的选项.里面可以设置动画的效果.可以使用UIViewAnimationOpt

transtion:过渡动画

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px Monaco; color: #4f5d66 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 17.0px Monaco; color: #4f5d66; min-height: 22.0px } span.Apple-tab-span { white-space: pre } 动画分为: 1.css3动画:(动画性能远高于js) 1).过渡动

Swift - 动画效果的实现方法总结(附样例)

在iOS中,实现动画有两种方法.一个是统一的animateWithDuration,另一个是组合出现的beginAnimations和commitAnimations.这三个方法都是类方法. 一,使用animateWithDuration来实现动画 (1)此方法共有5个参数: duration:动画从开始到结束的持续时间,单位是秒 delay:动画开始前等待的时间 options:动画执行的选项.里面可以设置动画的效果.可以使用UIViewAnimationOptions类提供的各种预置效果 a

Windows Store App 过渡动画

Windows Store App 过渡动画     在开发Windows应用商店应用程序时,如果希望界面元素进入或者离开屏幕时显得自然和流畅,可以为其添加过渡动画.过渡动画能够及时地提示用户屏幕所发生的变化,不会让用户觉得元素的位置变化过于突然.下面通过一个示例介绍如何为界面中的文本块添加过渡动画. 在一个打开的Windows应用商店项目中新建一个空白页,并命名为TransitionAnimationPage,双击打开此页面的TransitionAnimationPage.xaml文件,在Gr

带多种过渡动画的响应式jQuery幻灯片插件

Nivo-Slider是一款非常强大的响应式jQuery幻灯片插件.该幻灯片插件内置有16种不同的动画过渡效果.它提供了丰富的参数来控制幻灯片的播放.它使用简单,并且可以兼容IE8浏览器. 在线预览   源码下载 使用方法 使用Nivo-Slider幻灯片需要引入nivo-slider.css,jQuery(1.7+)和jquery.nivo.slider.js文件. 1 2 3 <link rel="stylesheet" href="css/nivo-slider.

Android中给layout下的布局文件添加动画效果

先上实现效果: 给ListView添加文本内容,文本内容添加进ListView的过程中增加动画效果 步骤一: 先定义好一个动画文件,把要实现的动画效果写好. 1.在res文件夹下创建anim文件夹 2.在anim文件夹中添加一个fd.xml(文件名自定义)文件 fd.xml内容: <!--组合动画 duration:组合动画发生的的间隔时间 --> <set android:duration="1000" xmlns:android="http://sche