package com.ntp.ui.course; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.view.ViewPager; import android.view.View; import android.widget.ImageView; import android.widget.TextView; import com.ntp.ui.R; import com.ntp.adapter.FragAdapter; import com.ntp.base.BaseActivity; import org.xutils.view.annotation.ContentView; import org.xutils.view.annotation.Event; import org.xutils.view.annotation.ViewInject; import java.util.ArrayList; import java.util.List; /** * 课程详细:简介、课件、视频、讨论 */ @ContentView(R.layout.activity_course_detail) public class CourseDetailActivity extends BaseActivity{ @ViewInject(R.id.courseName) private TextView mCourseName; @ViewInject(R.id.viewPager) private ViewPager mViewPager; //tab选项卡文字 @ViewInject(R.id.overview) private TextView mOverview; @ViewInject(R.id.courseWare) private TextView mCourseWare; @ViewInject(R.id.courseVideo) private TextView mCourseVideo; @ViewInject(R.id.courseForum) private TextView mCourseForum; //tab选项卡下划线 @ViewInject(R.id.overviewIndicator) private ImageView mOverviewIndicator; @ViewInject(R.id.courseWareIndicator) private ImageView mCourseWareIndicator; @ViewInject(R.id.courseVideoIndicator) private ImageView mCourseVideoIndicator; @ViewInject(R.id.courseForumIndicator) private ImageView mCourseForumIndicator; private String mCode;//课程代码 private FragAdapter mFragAdapter;//ViewPager适配器 private List<Fragment> mFragments = new ArrayList<Fragment>(); private Fragment mCourseOverviewFragment; private Fragment mCoursewareFragment; private Fragment mCoursevideoFragment; private Fragment mCourseForumFragment; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initData(); } //初始化界面 private void initData() { String name = getIntent().getExtras().getString("name"); mCourseName.setText(name);//设置课程名称 mCode=getIntent().getExtras().getString("code"); Bundle bundle = new Bundle(); bundle.putString("code", mCode); mCourseOverviewFragment=new CourseOverviewFragment(); mCoursewareFragment=new CoursewareFragment(); mCoursevideoFragment=new CoursevideoFragment(); mCourseForumFragment=new CourseForumFragment(); mCourseOverviewFragment.setArguments(bundle); mCoursewareFragment.setArguments(bundle); mCoursevideoFragment.setArguments(bundle); mCourseForumFragment.setArguments(bundle); mFragments.add(mCourseOverviewFragment); mFragments.add(mCoursewareFragment); mFragments.add(mCoursevideoFragment); mFragments.add(mCourseForumFragment); mFragAdapter = new FragAdapter(getSupportFragmentManager(), mFragments); mViewPager.setAdapter(mFragAdapter); mViewPager.setOffscreenPageLimit(2);//缓存相邻两个页面 mViewPager.setCurrentItem(0); mViewPager.setOnPageChangeListener(new MyViewPagerChangeListener()); } /** * ViewPager切换监听 */ private class MyViewPagerChangeListener implements ViewPager.OnPageChangeListener { @Override public void onPageScrolled(int i, float v, int i2) { } @Override public void onPageSelected(int position) { switch (position) { case 0://简介Fragment被选择 setTextColor(0); break; case 1://课件Fragment被选择 setTextColor(1); break; case 2://课程视频被选择 setTextColor(2); break; case 3://论坛被选择 setTextColor(3); break; } } @Override public void onPageScrollStateChanged(int i) { } } /** * 设置Fragment被选中时菜单图片、指示下划线 * * @param position Fragment索引值 */ public void setTextColor(int position) { mOverview.setTextColor(getResources().getColor(R.color.menu_text_reserve)); mCourseWare.setTextColor(getResources().getColor(R.color.menu_text_reserve)); mCourseVideo.setTextColor(getResources().getColor(R.color.menu_text_reserve)); mCourseForum.setTextColor(getResources().getColor(R.color.menu_text_reserve)); mOverviewIndicator.setVisibility(View.INVISIBLE); mCourseWareIndicator.setVisibility(View.INVISIBLE); mCourseVideoIndicator.setVisibility(View.INVISIBLE); mCourseForumIndicator.setVisibility(View.INVISIBLE); if (position == 0) { mOverviewIndicator.setVisibility(View.VISIBLE); mOverview.setTextColor(getResources().getColor(R.color.course_name)); } else if (position == 1) { mCourseWareIndicator.setVisibility(View.VISIBLE); mCourseWare.setTextColor(getResources().getColor(R.color.course_name)); } else if (position == 2) { mCourseVideoIndicator.setVisibility(View.VISIBLE); mCourseVideo.setTextColor(getResources().getColor(R.color.course_name)); } else if (position == 3) { mCourseForumIndicator.setVisibility(View.VISIBLE); mCourseForum.setTextColor(getResources().getColor(R.color.course_name)); } } @Event(value = {R.id.back,R.id.overview,R.id.courseWare,R.id.courseVideo,R.id.courseForum}) private void onClick(View v) { switch (v.getId()) { case R.id.back: finish(); break; case R.id.overview: mViewPager.setCurrentItem(0); break; case R.id.courseWare: mViewPager.setCurrentItem(1); break; case R.id.courseVideo: mViewPager.setCurrentItem(2); break; case R.id.courseForum: mViewPager.setCurrentItem(3); break; } } }