• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > ViewPager和Fragment的组合使用,viewpagerfragment

ViewPager和Fragment的组合使用,viewpagerfragment

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了fragmentviewpager,viewpager加fragment,fragment中viewpager,scrollview viewpager,viewpager view等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

ViewPager和Fragment的组合使用,viewpagerfragment


 如图是效果图用的是Viewpager和fragment来实现的主界面

不过其中的预加载我没有解决

如下是代码代码比较简单

package com.ithello.dingding;

import java.util.ArrayList;
import java.util.List;

import com.ithello.dingding.fragment.FourFragment;
import com.ithello.dingding.fragment.OneFragment;
import com.ithello.dingding.fragment.ThreeFragment;
import com.ithello.dingding.fragment.TwoFragment;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.ImageView;

/**
 * 主界面
 * 
 * @author zh
 * 
 */
public class MhomeActivity extends FragmentActivity implements OnClickListener {
    private ImageView imageView, imageView2, imageView3, imageView4;
    // private Fragment fragment,fragment2,fragment3,fragment4;
    private ViewPager viewPager;
    private List<Fragment> list;

    @Override
    protected void onCreate(Bundle arg0) {
        // TODO Auto-generated method stub
        super.onCreate(arg0);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.homeactivity);
        setView();
        setData();
    }

    private void setView() {
        // TODO Auto-generated method stub
        imageView = (ImageView) findViewById(R.id.iv_message);
        imageView2 = (ImageView) findViewById(R.id.iv_ding);
        imageView3 = (ImageView) findViewById(R.id.iv_work);
        imageView4 = (ImageView) findViewById(R.id.iv_atten);
        viewPager = (ViewPager) findViewById(R.id.viewpager);
        imageView.setOnClickListener(this);
        imageView2.setOnClickListener(this);
        imageView3.setOnClickListener(this);
        imageView4.setOnClickListener(this);
    }

    private void setData() {
        // TODO Auto-generated method stub
//        /**
//         * ViewPager.setOffscreenPageLimit(int
//         * limit),其中参数可以设为0或者1,参数小于1时,会默认用1来作为参数
//         * ,未设置之前,ViewPager会默认加载两个Fragment。所以,我们只需要调用下它,设置下加载Fragment个数即可。
//         */
//        viewPager.setOffscreenPageLimit(1);
        list = new ArrayList<Fragment>();
        list.add(new OneFragment());
        list.add(new TwoFragment());
        list.add(new ThreeFragment());
        list.add(new FourFragment());

        viewPager.setAdapter(new MyAdapter(getSupportFragmentManager(), list));
        viewPager.setOnPageChangeListener(new OnPageChangeListener() {

            @Override
            public void onPageSelected(int arg0) {
                // TODO Auto-generated method stub
                setShow();
                if (arg0 == 0) {
                    imageView.setImageResource(R.drawable.tab_mes_pressed);
                } else if (arg0 == 1) {
                    imageView2.setImageResource(R.drawable.tab_ding_pressed);
                } else if (arg0 == 2) {
                    imageView3.setImageResource(R.drawable.tab_work_pressed);
                } else if (arg0 == 3) {
                    imageView4.setImageResource(R.drawable.tab_attent_pressed);
                }
            }

            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub

            }
        });

    }

    // 用于在下一次事件前重置控件属性
    protected void setShow() {
        // TODO Auto-generated method stub
        imageView.setImageResource(R.drawable.tab_mes_normal);
        imageView2.setImageResource(R.drawable.tab_ding_normal);
        imageView3.setImageResource(R.drawable.tab_work_normal);
        imageView4.setImageResource(R.drawable.tab_attent_normal);
    }

    /**
     * 点击事件发生时,相关页面跳转 用setCurrent
     * 
     * @param arg0
     */
    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        setShow();
        switch (arg0.getId()) {
        case R.id.iv_message:
            viewPager.setCurrentItem(0);
            imageView.setImageResource(R.drawable.tab_mes_pressed);
            break;
        case R.id.iv_ding:
            viewPager.setCurrentItem(1);
            imageView2.setImageResource(R.drawable.tab_ding_pressed);
            break;
        case R.id.iv_work:
            viewPager.setCurrentItem(2);
            imageView3.setImageResource(R.drawable.tab_work_pressed);
            break;
        case R.id.iv_atten:
            viewPager.setCurrentItem(3);
            imageView4.setImageResource(R.drawable.tab_attent_pressed);
            break;

        default:
            break;
        }
    }

    class MyAdapter extends FragmentPagerAdapter {
        List<Fragment> listFragments;

        public MyAdapter(FragmentManager fm, List<Fragment> list) {
            super(fm);
            this.listF



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ViewPager结合Fragment进行无限滑动,viewpagerfragment
  • ViewPager和Fragment的组合使用,viewpagerfragment

相关文章

  • 2017-05-26硅谷社交10--会话详情页面,硅谷社交10--会话
  • 2017-05-26统计nginx日志中各服务(目录)http总请求数、成功数、失败数的shell
  • 2017-05-26关于安卓的一些初步认识,安卓认识
  • 2017-05-26android WebView控件显示网页,androidwebview
  • 2017-05-26Android源码中内置包含so文件的APK文件,androidapk
  • 2017-05-26Android开发专业名词及工具概述,android名词
  • 2017-05-26硅谷商城第二版3--分类模块,硅谷商城第二版3--
  • 2017-05-26Android 自定义View高级特效,神奇的贝塞尔曲线
  • 2017-05-26android 通过uri获取bitmap图片并压缩,
  • 2017-05-26Android Activity生命周期与启动模式,androidactivity

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 使用Chrome远程调试GenyMotion上的WebView程序,genymotionwebview
    • Android Studio同时打开多个项目,androidstudio
    • android源码解析之(四)--)IntentService
    • Android开发学习之路--Service之初体验
    • Postgresql通过td_fdw连接查询 MS SQL Serever 2008 表
    • Android数据存储方式--SharedPreferences,sharedpreferences
    • Android开发学习——应用安装过程,android开发
    • cobbler系统使用之二高级篇的补充篇---关于kickstart文件内容的配置说明
    • Android 手机卫士--导航界面3、4和功能列表界面跳转逻辑处理,android4和
    • java中random随机函数的一些理解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有