滑动viewpage
Adapter:
package com.example.fashionyuan.Adatader; import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter; import java.util.ArrayList; /**
* Created by 梁Sir on 2017/9/26.
*/ public class Adatader extends FragmentPagerAdapter{
private ArrayList<Fragment>list; public Adatader(FragmentManager fm, ArrayList<Fragment> list) {
super(fm);
this.list = list;
} public Adatader(FragmentManager fm) {
super(fm);
} @Override
public Fragment getItem(int position) {
return list.get(position);
} @Override
public int getCount() {
return list.size();
}
}
mian:
package com.example.fashionyuan.main; import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.widget.RadioButton;
import android.widget.RadioGroup; import com.example.fashionyuan.Adatader.Adatader;
import com.example.fashionyuan.Fragment.FragmentA;
import com.example.fashionyuan.Fragment.FragmentB;
import com.example.fashionyuan.Fragment.FragmentC;
import com.example.fashionyuan.Fragment.FragmentD;
import com.example.fashionyuan.Fragment.FragmentE;
import com.example.fashionyuan.R; import java.util.ArrayList; public class MainActivity extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener, ViewPager.OnPageChangeListener {
private ArrayList<Fragment> list;
private FragmentManager fm;
private ViewPager vp;
private RadioButton[] radioButtons;
private RadioGroup rg; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
} private void initView() {
vp = (ViewPager) findViewById(R.id.vp);
rg = (RadioGroup) findViewById(R.id.rg);
radioButtons =new RadioButton[rg.getChildCount()];
for (int i = 0; i <radioButtons.length; i++) {
radioButtons[i] = (RadioButton) rg.getChildAt(i);
}
FragmentA fragmentA=new FragmentA();
FragmentB fragmentB=new FragmentB();
FragmentC fragmentC=new FragmentC();
FragmentD fragmentD=new FragmentD();
FragmentE fragmentE=new FragmentE();
list = new ArrayList<>();
list.add(fragmentA);
list.add(fragmentB);
list.add(fragmentC);
list.add(fragmentD);
list.add(fragmentE);
fm = getSupportFragmentManager();
Adatader adatader = new Adatader(fm,list);
vp.setAdapter(adatader);
radioButtons[0].setChecked(true);
rg.setOnCheckedChangeListener(this);
vp.setOnPageChangeListener(this); } @Override
public void onCheckedChanged(RadioGroup radioGroup, int i) {
for (int j = 0; j <radioButtons.length; j++) {
if (radioButtons[j].getId()==i){
vp.setCurrentItem(j); }
}
} @Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override
public void onPageSelected(int position) {
radioButtons[position].setChecked(true); } @Override
public void onPageScrollStateChanged(int state) { }
}
滑动viewpage的更多相关文章
- ViewPage和ActionBar打造滑动视图
滑动效果非常流畅,可以将页签放置到ActionBar上,点击页签可以切换ViewPage,滑动ViewPage会同步更显Tabs. main.xml <?xml version="1. ...
- 自定义View(二)ViewPage广告轮播
自定义View的第二个学习案例,使用ViewPage实现广告轮播,通过组合现有的View实现效果如下: 有关ViewPage使用可以学习谷歌官方API,和训练案例: 1.使用ViewPage实现屏幕滑 ...
- Android Studio精彩案例(二)《仿微信动态点击底部tab切换Fragment》
转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 现在很多的App要么顶部带有tab,要么就底部带有tab.用户通过点击tab从而切换不同的页面(大部分情况时去切换fragment). ...
- viewpage滑动查看图片并再有缩略图预览
首先看下效果图, 主要功能分为3大块 一是滑动查看,通过viewpage来实现,方法见 http://www.cnblogs.com/lovemo1314/p/6109312.html 二.点击放大 ...
- viewpage 循环滑动播放图片
一般来说,viewpage 只支持图片的顺序滑动播放,在滑到边界时就再也滑不动了,如果要想继续滑动,只能向两边额外增加一张相片,即把第一张相片的位置放在最后一张图片的后面,给用户的感觉我继续滑就滑到了 ...
- Android典型界面设计——ViewPage+Fragment实现区域顶部tab滑动切换
一.问题描写叙述 本系列将结合案例应用,陆续向大家介绍一些Android典型界面的设计,首先说说tab导航,导航分为一层和两层(底部区块+区域内头部导航).主要实现方案有RadioGroup+View ...
- 修复在“Android 在ScrollView中嵌入ViewPage后ViewPage不能很好的工作的问题解决”这篇博客中MyScrollView出现滑动一会就不会上下滑动的问题
在“Android 在ScrollView中嵌入ViewPage后ViewPage不能很好的工作的问题解决”,这篇博客中的大部分问题已经解决了. 唯一遗憾的是,ViewPage随人能够工作了,但是My ...
- ViewPage+Frament+listView滑动效果
近期在做一个须要使用Frament+ViewPage制作一个滑动的效果,看了非常多资料,最终实现了,这与大家分享一下战果 总结一下.这里我做了一个Demo分享给大家 我的文件文件夹结构图 1.首先要有 ...
- 解决ViewPage中嵌套有ListView或者滑动手势等造成滑动的冲突
public class ViewPagerCompat extends ViewPager { //mViewTouchMode表示ViewPager是否全权控制滑动事件,默认为false,即不控制 ...
随机推荐
- django发送邮件send_mail&send_mass_mail
一.配置 在setting.py中进行相关配置: EMAIL_HOST = 'smtp.sina.cn' #SMTP地址 EMAIL_PORT = 25 #SMTP端口 EMAIL_HOST_USER ...
- 用sklearn 实现linear regression
基本的regression算法有四种方法可以实现,分别是下面四种 LinearRegressionRidge (L2 regularization)Lasso (L1 regularization)E ...
- Hough transform(霍夫变换)
主要内容: 1.Hough变换的算法思想 2.直线检测 3.圆.椭圆检测 4.程序实现 一.Hough变换简介 Hough变换是图像处理中从图像中识别几何形状的基本方法之一.Hough变换的基本原理在 ...
- python:函数和循环判断
输出显示 先说一下最基础的输出: print('hello world') 唯一值得提到是字符串的format函数. format函数代替了C中的%s. print('{0} say:{0} {1}. ...
- Java基础10-集合
作业回顾 蜜蜂和熊的生产消费关系,熊在蜂蜜满10斤吃掉.蜜蜂一次生产一斤蜂蜜,且蜜蜂生成一斤蜂蜜花费的时间是10s. 十只蜜蜂和两只熊. 蜜蜂 bag: 20 每次产1,耗时10ms 满5的时候给蜜罐 ...
- Sublime text3 连接sftp/ftp(远程服务器)
1.按下Ctrl + Shift + P调出命令面板2.在输入框中输入Sftp,按回车下载3.建一个新的文件夹放到左边的项目栏中4.右击文件夹,选中SFTP/FTP,点击Map to Remote5. ...
- centos禁止与开启ping设置
禁止ping: echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 允许ping: echo 0 > /proc/sys/net/ipv4/i ...
- java的官网下载(如有不懂,可以去我发的视频网站,那里面有详细过程)
https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase9-3934878.html java 9的下载 ...
- 【MySql】update用法
update 语句可用来修改表中的数据, 简单来说基本的使用形式为: update 表名称 set 列名称=新值 where 更新条件; 以下是在表 students 中的实例: 将 id 为 5 的 ...
- uni-app图片压缩转base64位 利用递归来实现多张图片压缩
//选择图片 chooseImage(){ let that =this uni.chooseImage({ sizeType: ['original','compressed'], //可以指定是原 ...