一个activity里面可以放了两个fragment
在SplashFragment里面
case 4:
if (mPosition == 0) {
if (CommonUtils.compareString(NormDefine.DEVICE_EDUCATION_DEFAULT, NormDefine.DEVICE_EDUCATION_OPEN)) { //判断如果电教是开启的
intent.setClass(getActivity(), MediaShowActivity.class); //就跳转界面,getActivity是用于fragment的,现在的fragment界面跳转到MediaShowActivity.class,MediaShowActivity是一整个大界面
startActivity(intent);
} else {
if (!TextUtils.isEmpty(InterSysEvent.PersonId)) {
CheckPrivateActivity.startCheckPrivateActivity(getContext(), null);
} else {
Toast.makeText(getContext(), “请刷卡或者指纹登录,才能查看你的个人信息,敬请配合!”, Toast.LENGTH_SHORT).show();
}
} //否则就不能执行跳转,只能看到土司
在MediaShowActivity里面
case R.id.tv_diff:
setBackgroundOfView(v);
break;
default:
int position = mFunBtns.indexOf(v); //下面这些都是常规代码
SimpleDateFormat df = new SimpleDateFormat("HH:mm:ss");//设置日期格式
Date now = null;
Date beginTime = null;
Date endTime = null;
try {
now = df.parse(df.format(new Date(System.currentTimeMillis())));
beginTime = df.parse(new String("07:00:00"));
endTime = df.parse(new String("21:00:00"));
} catch (ParseException e) {
e.printStackTrace();
}
//当点击到“视频点播”的时候,并且判断当前是否在规定时间内,如果是,就可以进行一下操作
if (mNavTTSTest[position].equals(“视频点播”)) {
if (beginTime.getTime() < now.getTime() && now.getTime() < endTime.getTime()) {
selectBtn(position); //用来判断点击了哪个按键,mNavTTSTest是用来存放按键的文字,selectBtn函数里面还会加载相应的fragment
KLTTS.getInstance().ttsSpeak(mNavTTSTest[position]); //可以语音播放
mViewPager.setCurrentItem(position, false); //可以跳转界面,这里的跳转界面是滑动的方式,按键对应的界面
mCurPos = position;
mLastPos = mCurPos;
}
} else {
selectBtn(position);
KLTTS.getInstance().ttsSpeak(mNavTTSTest[position]);
mViewPager.setCurrentItem(position, false);
mCurPos = position;
mLastPos = mCurPos;
}
break;
在使用ViewPager的过程中,有需要直接跳转到某一个页面的情况,这个时候就需要用到ViewPager的setCurrentItem方法了,它的意思是跳转到ViewPager的指定页面,但在使用这个方法的时候有个问题,跳转的时候有滑动效果
总结:跳转界面就需要调:按钮mFunBtns的UI界面,界面相应的fragment文件,按钮的文字显示mNavTTSTest,点击按钮后的界面跳转mViewPager.setCurrentItem(滑动方式)