Android的Viewpager+Fragment懒加载
来源:互联网 发布:大数据概念上市公司 编辑:程序博客网 时间:2024/05/21 06:54
1.首先用到的库文件:https://github.com/lianghanzhen/LazyViewPager
2.xml布局:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <com.github.lianghanzhen.LazyViewPager android:id="@+id/lazy_view_pager" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" app:init_lazy_item_offset="0.3" /> <LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal"> <TextView android:id="@+id/txt1" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="第一个" android:textSize="14sp" /> <TextView android:id="@+id/txt2" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="第二个" android:textSize="14sp" /> <TextView android:id="@+id/txt3" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="第三个" android:textSize="14sp" /> <TextView android:id="@+id/txt4" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="第四个" android:textSize="14sp" /> </LinearLayout></LinearLayout>3.代码
package com.lushan.adapter;import android.os.Bundle;import android.support.annotation.Nullable;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.view.View;import android.view.ViewGroup;import android.widget.TextView;import com.github.lianghanzhen.LazyFragmentPagerAdapter;import com.github.lianghanzhen.LazyViewPager;/** * Created on lushan * Created date 2017/8/7 10:04 */public class TestDemo extends AppCompatActivity implements View.OnClickListener { private TextView txt1; private TextView txt2; private TextView txt3; private TextView txt4; private LazyViewPager lazy_view_pager; private TxtFragment1 txtFragment1; private TxtFragment2 txtFragment2; private TxtFragment3 txtFragment3; private TxtFragment4 txtFragment4; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_demo); txt1 = (TextView) findViewById(R.id.txt1); txt2 = (TextView) findViewById(R.id.txt2); txt3 = (TextView) findViewById(R.id.txt3); txt4 = (TextView) findViewById(R.id.txt4); lazy_view_pager = (LazyViewPager) findViewById(R.id.lazy_view_pager); txt1.setOnClickListener(this); txt2.setOnClickListener(this); txt3.setOnClickListener(this); txt4.setOnClickListener(this); lazy_view_pager.setAdapter(new CustomLazyFragmentPagerAdapter(getSupportFragmentManager())); } public class CustomLazyFragmentPagerAdapter extends LazyFragmentPagerAdapter { private CustomLazyFragmentPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(ViewGroup container, int position) { switch (position) { case 0: if (txtFragment1 == null) { txtFragment1 = new TxtFragment1(); } return txtFragment1; case 1: if (txtFragment2 == null) { txtFragment2 = new TxtFragment2(); } return txtFragment2; case 2: if (txtFragment3 == null) { txtFragment3 = new TxtFragment3(); } return txtFragment3; case 3: if (txtFragment4 == null) { txtFragment4 = new TxtFragment4(); } return txtFragment4; } return null; } @Override public int getCount() { return 4; } } @Override public void onClick(View v) { switch (v.getId()) { case R.id.txt1: lazy_view_pager.setCurrentItem(0); break; case R.id.txt2: lazy_view_pager.setCurrentItem(1); break; case R.id.txt3: lazy_view_pager.setCurrentItem(2); break; case R.id.txt4: lazy_view_pager.setCurrentItem(3); break; } }}4.输出:
阅读全文
0 0
- Android的Viewpager+Fragment懒加载
- Android ViewPager + Fragment懒加载
- Android viewpager + fragment 的懒加载 只加载一次
- viewpager+fragment的懒加载
- Android Viewpager+Fragment的懒加载优化问题
- Android 解决ViewPager+Fragment懒加载的问题
- 【Android】Fragment懒加载和ViewPager的坑
- 【Android】Fragment懒加载和ViewPager的坑
- Android 在 ViewPager 中使用 Fragment 的懒加载
- 【Android】Fragment懒加载和ViewPager的坑
- Android ViewPager + Fragment 懒加载处理
- android ViewPager+Fragment之懒加载
- Android之Viewpager+Fragment实现懒加载
- Android之Viewpager+Fragment实现懒加载
- Android之ViewPager+Fragment实现懒加载
- ViewPager+Fragment懒加载
- Viewpager Fragment懒加载
- ViewPager+Fragment懒加载
- sublime text 3 快捷键大全以及配置编译环境
- 在C++里一个类成员函数多少行代码才是最好呢?
- 度度熊的王国战略
- JSP注释
- 词组缩写 HDU-2564
- Android的Viewpager+Fragment懒加载
- MySQL--创建时间和更新时间字段
- 8-7
- 140
- 封装日期数据类型的两种实现(algs4)
- 网卡数据的接收
- Educational Codeforces Round 26 D. Round Subset 滚动数组优化DP
- linux安装检查ssh
- PE文件格式详解(0)