简单的ViewPager+Fragment+小圆点的实现
来源:互联网 发布:新浪nba球员数据 编辑:程序博客网 时间:2024/05/17 04:43
红点(http://img.blog.csdn.net/20170926151350811?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUm9va2llemJi/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
白点(http://img.blog.csdn.net/20170926151431837?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvUm9va2llemJi/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
首先是布局:
<?xml version="1.0" encoding="utf-8"?><RelativeLayout 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:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.bawei.lx_lxtwo.MainActivity"> <android.support.v4.view.ViewPager android:id="@+id/vp" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true" android:layout_alignParentStart="true"> </android.support.v4.view.ViewPager> <LinearLayout android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="10dp" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"> <ImageView android:id="@+id/img1" android:src="@drawable/point_selected" android:layout_marginRight="5dp" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <ImageView android:id="@+id/img2" android:layout_marginLeft="5dp" android:src="@drawable/point_mormal" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout></RelativeLayout>
然后我们新建两个fragment
package com.bawei.lx_lxtwo.fragments;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;import com.bawei.lx_lxtwo.R;/** * Created by Zhang on 2017/9/26. */public class HelloFragment extends Fragment { private View view; private TextView mHelloTv; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View v = inflater.inflate(R.layout.hello, container, false); initView(v); mHelloTv.setText(" 欢迎使用\n北京共享单车"); return v; } private void initView(View v) { mHelloTv = (TextView) v.findViewById(R.id.hello_tv); }}
fragment的布局里只有一个textview,再建一个一样的。
然后就是mainactivity
package com.bawei.lx_lxtwo;import android.os.Bundle;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.widget.ImageView;import com.bawei.lx_lxtwo.fragments.GoFragment;import com.bawei.lx_lxtwo.fragments.HelloFragment;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private ViewPager mVp; private List<Fragment> flist = new ArrayList<>(); private ImageView[] imgs; private ImageView mImg1; private ImageView mImg2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //初始化数据 initView(); //设置数据 getview(); imgs = new ImageView[]{mImg1,mImg2}; } private void getview() { flist.add(new HelloFragment()); flist.add(new GoFragment()); mVp.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public Fragment getItem(int position) { return flist.get(position); } @Override public int getCount() { return flist.size(); } }); //这里用viewpager的OnPageChangeListener方法设置小圆点的颜色 mVp.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { getpoint(position); } @Override public void onPageScrollStateChanged(int state) { } }); } private void getpoint(int index) { //这里判断哪个是红点 for (int i = 0; i < imgs.length; i++) { if(i==index){ imgs[i].setImageResource(R.drawable.point_selected); }else{ imgs[i].setImageResource(R.drawable.point_mormal); } } } private void initView() { mVp = (ViewPager) findViewById(R.id.vp); mImg1 = (ImageView) findViewById(R.id.img1); mImg2 = (ImageView) findViewById(R.id.img2); }}
阅读全文
1 0
- 简单的ViewPager+Fragment+小圆点的实现
- ViewPager轮播小圆点的实现
- ViewPager+Fragment(小圆点)
- ViewPager加小圆点实现第一次安装的导航
- ViewPager实现APP的引导页面(小圆点联动)
- 小圆点的实现
- 小圆点和Viewpager+fragment实现轮播
- viewpager添加小圆点的方法
- ViewPager小圆点的绘制及用法
- ViewPager+小圆点的无限轮播
- ViewPager与底部小圆点的联动
- viewPager的无限轮播加底部小圆点
- Banner(Viewpager+小圆点的简单化)
- ViewPager与小圆点的联动效果
- 第三十一天 ViewPager(带小圆点的图片左右循环滑动)、Fragment
- 打造最简单ViewPager指示器,实现小圆点效果
- ViewPager翻页的时候下面的小圆点跟着滑动如何实现。
- 引导页的实现,用ViewPager,底下有小圆点显示以及滑动进入主页面
- 关于MFC CFileDlg使用,析构时访问空指针崩溃问题的解决办法
- Handling database fetch size in Sqoop
- Java学习笔记之泛型(三):泛型类
- XML处理SQL大于号小于号等特殊字符
- TabLayout和CoordinatorLayout相结合的库的全面详解及修改
- 简单的ViewPager+Fragment+小圆点的实现
- 【算法世界】(八)找出数组中的两个数,使得二者之和为特定值target
- 用户注册
- [转载: Android开发666]okhttp的封装及使用
- ScrollView与SeekBar绑定实现滑动时出现小滑块的效果
- Java并发编程:volatile关键字解析
- 使用循环的方式遍历二叉树
- 模块paramiko 介绍
- web-前端之下拉菜单演示