Android开发之CoordinatorLayoutAppBarLayoutViewPagerTabLayout实现顶部伸缩效果
来源:互联网 发布:淘宝店怎么设置类目 编辑:程序博客网 时间:2024/06/05 09:57
源码已上传到码云上https://git.oschina.net/osczaizai/AndroidDemo
前面学习了coordinatorLayout,
连接:http://cherylgood.cn/c/Android开发之CoordinatorLayout使用详解一.php
http://cherylgood.cn/c/Android开发之CoordinatorLayout使用详解二.php
现在我们来个小demo 其实代码都很简单,只要你看了前面的两个使用介绍,基本久OK了
1、主布局文件
<?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_recycler_view" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="guanaj.com.coordinatorlayoutdemo.recyclerdemo.RecyclerViewActivity"> <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <LinearLayout android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="120dp" android:background="#cccccc" app:layout_scrollFlags="scroll|enterAlways"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="top content" android:textColor="#000" /> </LinearLayout> </android.support.design.widget.AppBarLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <android.support.design.widget.TabLayout android:id="@+id/tablayout" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabTextColor="#000000" /> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent"> </android.support.v4.view.ViewPager> </LinearLayout></android.support.design.widget.CoordinatorLayout>
重点看这两句:
app:layout_scrollFlags="scroll|enterAlways"
app:layout_behavior="@string/appbar_scrolling_view_behavior"其实
layout_behavior 只要设置在有子view 是可以滚动的就可以了,主activity代码:
package guanaj.com.coordinatorlayoutdemo.recyclerdemo;import android.net.Uri;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import java.util.ArrayList;import java.util.List;import guanaj.com.coordinatorlayoutdemo.R;public class RecyclerViewActivity extends AppCompatActivity { private TabLayout tabLayout; private ViewPager viewPager; private List<Fragment> fragmentList = new ArrayList<>(); private MyFragmentAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_recycler_view); initViews(); initEvent(); initData(); } private void initViews() { tabLayout = (TabLayout) findViewById(R.id.tablayout); viewPager = (ViewPager) findViewById(R.id.viewpager); tabLayout.setupWithViewPager(viewPager); adapter = new MyFragmentAdapter(getSupportFragmentManager()); viewPager.setAdapter(adapter); } private void initEvent() { } private void initData() { for (int i = 0;i<5;i++){ Fragment fragment = new ContentFragment(); fragmentList.add(fragment); } adapter.notifyDataSetChanged(); } class MyFragmentAdapter extends FragmentPagerAdapter { public MyFragmentAdapter(FragmentManager fm) { super(fm); } @Override public CharSequence getPageTitle(int position) { return "标题:"+position; } @Override public Fragment getItem(int position) { return fragmentList.get(position); } @Override public int getCount() { return fragmentList == null ? 0 : fragmentList.size(); } }}
http://cherylgood.cn/c/Android开发之CoordinatorLayoutAppBarLayoutViewPagerTabLayout实现.php
0 0
- Android开发之CoordinatorLayoutAppBarLayoutViewPagerTabLayout实现顶部伸缩效果
- android 实现伸缩布局效果
- Android开发之TabLayout实现顶部菜单
- Android实现伸缩弹力分布菜单效果
- Android实现伸缩弹力分布菜单效果
- Android实现伸缩弹力分布菜单效果
- Android实现伸缩弹力分布菜单效果
- android实现scale伸缩动画效果
- Android实现伸缩弹力分布菜单效果
- Android实现伸缩弹力分布菜单效果
- Android实现伸缩弹力分布菜单效果
- Android实现伸缩弹力分布菜单效果
- android之仿微博Textview的伸缩效果
- Material Design之利用CollapsingToolbarLayout轻松实现知乎日报新闻详情页顶部效果(带banner的toolbar伸缩折叠效果)
- Android开发滑动到顶部悬停效果
- Android 文本伸缩效果
- Android 简单实现ListView顶部悬浮效果
- Android 简单实现ListView顶部悬浮效果
- java常用混淆工具(有链接)
- lvm 创建、扩充 、缩减 逻辑磁盘大小,以及相应的文件系统大小
- 数据库Sharding的基本思想和切分策略
- java多线程学习之死锁的模拟和避免
- 对JS关于对象创建的几种方式的整理
- Android开发之CoordinatorLayoutAppBarLayoutViewPagerTabLayout实现顶部伸缩效果
- 百度定位到经纬度,地址
- mybatis链接数据库出错
- 设计模式 适配器模式 以手机充电器为例
- 自定义View进阶-Canvas之绘制图形
- 二叉树的遍历-先序中序后序层次(java实现)
- Mac上传.a静态库到服务器(图文教程)
- WARNING POSSIBLE DNS SPOOFING DETECTED
- JAVA代理模式