package com.bwie.zhouliumoni.fragment;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
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.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
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.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import com.bwie.zhouliumoni.R;
import com.bwie.zhouliumoni.adapter.Myvp01Adapter;
import com.bwie.zhouliumoni.adapter.Myvp01Adapter;
import java.util.ArrayList;
import java.util.List;
import java.util.List;
/**
* Created by 老北城 on 2017/10/21.
*/
* Created by 老北城 on 2017/10/21.
*/
public class ShouyeFragment extends Fragment {
private TabLayout shouye_tas;
private ViewPager shouye_vp;
private List<String> list;
private ViewPager vp_01;
private LinearLayout lin_buttom;
private List<String> listurl;
private List<ImageView> images;
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
//获取当前正在显示的页面
int index=vp_01.getCurrentItem();
vp_01.setCurrentItem(index+1);
//改变小圆点
setSelectedPoint((index+1)%listurl.size());
//延迟发送消息
sendEmptyMessageDelayed(1,2000);
}
};
private ViewPager shouye_vp;
private List<String> list;
private ViewPager vp_01;
private LinearLayout lin_buttom;
private List<String> listurl;
private List<ImageView> images;
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
//获取当前正在显示的页面
int index=vp_01.getCurrentItem();
vp_01.setCurrentItem(index+1);
//改变小圆点
setSelectedPoint((index+1)%listurl.size());
//延迟发送消息
sendEmptyMessageDelayed(1,2000);
}
};
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v=View.inflate(getContext(), R.layout.shouye,null);
//找到控件
shouye_tas = (TabLayout) v.findViewById(R.id.shouye_tas);
shouye_vp = (ViewPager) v.findViewById(R.id.shouye_vp);
vp_01 = (ViewPager) v.findViewById(R.id.vp_01);
lin_buttom = (LinearLayout) v.findViewById(R.id.lin_bottom);
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View v=View.inflate(getContext(), R.layout.shouye,null);
//找到控件
shouye_tas = (TabLayout) v.findViewById(R.id.shouye_tas);
shouye_vp = (ViewPager) v.findViewById(R.id.shouye_vp);
vp_01 = (ViewPager) v.findViewById(R.id.vp_01);
lin_buttom = (LinearLayout) v.findViewById(R.id.lin_bottom);
return v;
}
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
list = new ArrayList<>();
list.add("推荐");
list.add("课程");
list.add("实战");
list.add("职业路径");
shouye_vp.setAdapter(new MyvpAdapter(getChildFragmentManager()));
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
list = new ArrayList<>();
list.add("推荐");
list.add("课程");
list.add("实战");
list.add("职业路径");
shouye_vp.setAdapter(new MyvpAdapter(getChildFragmentManager()));
//进行关联
shouye_tas.setupWithViewPager(shouye_vp);
shouye_tas.setupWithViewPager(shouye_vp);
listurl = new ArrayList<>();
listurl.add("http://pic8.nipic.com/20100701/5290458_114840036316_2.jpg");
listurl.add("http://pic2.nipic.com/20090424/1468853_230119053_2.jpg");
listurl.add("http://img3.3lian.com/2013/s1/20/d/57.jpg");
listurl.add("http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg");
listurl.add("http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg");
listurl.add("http://pic8.nipic.com/20100701/5290458_114840036316_2.jpg");
listurl.add("http://pic2.nipic.com/20090424/1468853_230119053_2.jpg");
listurl.add("http://img3.3lian.com/2013/s1/20/d/57.jpg");
listurl.add("http://pic39.nipic.com/20140226/18071023_164300608000_2.jpg");
listurl.add("http://a0.att.hudong.com/15/08/300218769736132194086202411_950.jpg");
//初始化小圆点
initDoc();
//设置加载的页数
vp_01.setCurrentItem(listurl.size()*10);
initDoc();
//设置加载的页数
vp_01.setCurrentItem(listurl.size()*10);
//设置适配器
vp_01.setAdapter(new Myvp01Adapter(getContext(),listurl));
//发送消息实现自动轮播
handler.sendEmptyMessageDelayed(1,2000);
vp_01.setAdapter(new Myvp01Adapter(getContext(),listurl));
//发送消息实现自动轮播
handler.sendEmptyMessageDelayed(1,2000);
}
//切换tablayout的适配器配置
class MyvpAdapter extends FragmentPagerAdapter{
public MyvpAdapter(FragmentManager fm) {
super(fm);
}
class MyvpAdapter extends FragmentPagerAdapter{
public MyvpAdapter(FragmentManager fm) {
super(fm);
}
@Override
public CharSequence getPageTitle(int position) {
return list.get(position);
}
public CharSequence getPageTitle(int position) {
return list.get(position);
}
@Override
public Fragment getItem(int position) {
Bundle bundle = new Bundle();
bundle.putString("key",list.get(position));
ContentFragment contentFragment = new ContentFragment();
contentFragment.setArguments(bundle);
public Fragment getItem(int position) {
Bundle bundle = new Bundle();
bundle.putString("key",list.get(position));
ContentFragment contentFragment = new ContentFragment();
contentFragment.setArguments(bundle);
return contentFragment;
}
}
@Override
public int getCount() {
return list.size();
}
}
public int getCount() {
return list.size();
}
}
public void setSelectedPoint(int index){
for (int i=0;i<images.size();i++){
if(i==index){
images.get(i).setImageResource(R.drawable.point_selected);
}else{
images.get(i).setImageResource(R.drawable.point_un_selected);
}
}
}
for (int i=0;i<images.size();i++){
if(i==index){
images.get(i).setImageResource(R.drawable.point_selected);
}else{
images.get(i).setImageResource(R.drawable.point_un_selected);
}
}
}
//配置小圆点
public void initDoc(){
images = new ArrayList<>();
public void initDoc(){
images = new ArrayList<>();
for (int i=0;i<listurl.size();i++){
ImageView imgPoint=new ImageView(getContext());
//设置图片的缩放模式
imgPoint.setScaleType(ImageView.ScaleType.FIT_XY);
if (i==0){
imgPoint.setImageResource(R.drawable.point_selected);
}else{
imgPoint.setImageResource(R.drawable.point_un_selected);
}
ImageView imgPoint=new ImageView(getContext());
//设置图片的缩放模式
imgPoint.setScaleType(ImageView.ScaleType.FIT_XY);
if (i==0){
imgPoint.setImageResource(R.drawable.point_selected);
}else{
imgPoint.setImageResource(R.drawable.point_un_selected);
}
//设置宽度和高度
LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(15,15);
params.setMargins(10,0,10,0);
//添加到容器里面
lin_buttom.addView(imgPoint,params);
images.add(imgPoint);
}
}
}
LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(15,15);
params.setMargins(10,0,10,0);
//添加到容器里面
lin_buttom.addView(imgPoint,params);
images.add(imgPoint);
}
}
}
布局
<?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">
<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">
<android.support.design.widget.TabLayout
android:id="@+id/shouye_tas"
android:layout_width="match_parent"
android:layout_height="50dp"
app:tabGravity="center"
app:tabIndicatorColor="@color/colorAccent"
app:tabMode="fixed"
app:tabSelectedTextColor="@color/colorPrimaryDark"
app:tabTextColor="@color/colorPrimary"></android.support.design.widget.TabLayout>
android:id="@+id/shouye_tas"
android:layout_width="match_parent"
android:layout_height="50dp"
app:tabGravity="center"
app:tabIndicatorColor="@color/colorAccent"
app:tabMode="fixed"
app:tabSelectedTextColor="@color/colorPrimaryDark"
app:tabTextColor="@color/colorPrimary"></android.support.design.widget.TabLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<android.support.v4.view.ViewPager
android:id="@+id/vp_01"
android:layout_width="match_parent"
android:layout_height="210dp"></android.support.v4.view.ViewPager>
android:id="@+id/vp_01"
android:layout_width="match_parent"
android:layout_height="210dp"></android.support.v4.view.ViewPager>
<!--android:layout_alignBottom: 控件的下边对齐-->
<LinearLayout
android:id="@+id/lin_bottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/vp_01"
android:layout_marginBottom="7dp"
android:gravity="center"
android:orientation="horizontal"></LinearLayout>
<LinearLayout
android:id="@+id/lin_bottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/vp_01"
android:layout_marginBottom="7dp"
android:gravity="center"
android:orientation="horizontal"></LinearLayout>
</RelativeLayout>
<android.support.v4.view.ViewPager
android:id="@+id/shouye_vp"
android:layout_width="match_parent"
android:layout_height="405dp"
android:layout_below="@+id/shouye_tas"></android.support.v4.view.ViewPager>
android:id="@+id/shouye_vp"
android:layout_width="match_parent"
android:layout_height="405dp"
android:layout_below="@+id/shouye_tas"></android.support.v4.view.ViewPager>
</LinearLayout>