在首页使用Pageview底部菜单栏后java文件设置无效

原创 2017年01月03日 03:36:49
在Main_activity.java里设置了一个翻页用的底部菜单栏,使用PageVIEW实现的,其中只是把对应的layout的id加到了数组里,而我之后想往其中一个页面里面再加一个广告用的pageview,但是好像是J新建的想和homepage_layout.xml相关联的java文件就算设置了
       @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.homepage_layout);
也不能和显示出来的xml布局文件相关联,就是说java文件里面的设置完全不生效,该怎么办啊。。
main文件如下:
public class MainActivity extends Activity {

//底边菜单栏的切换效果部分
private ViewPager mTabPager;
private ImageView mTabImg;// 动画图片
private ImageView mTab1, mTab2, mTab3, mTab4;
private int zero = 0;// 动画图片偏移量
private int currIndex = 0;// 当前页卡编号
private int one;// 单个水平动画位移
private int two;
private int three;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);


//页面的切换
mTabPager = (ViewPager) findViewById(R.id.tabpager);
mTabPager.setOnPageChangeListener(new MyOnPageChangeListener());

mTab1 = (ImageView) findViewById(R.id.img_weixin);
mTab2 = (ImageView) findViewById(R.id.img_address);
mTab3 = (ImageView) findViewById(R.id.img_friends);
mTab4 = (ImageView) findViewById(R.id.img_settings);
mTabImg = (ImageView) findViewById(R.id.img_tab_now);
mTab1.setOnClickListener(new MyOnClickListener(0));
mTab2.setOnClickListener(new MyOnClickListener(1));
mTab3.setOnClickListener(new MyOnClickListener(2));
mTab4.setOnClickListener(new MyOnClickListener(3));
Display currDisplay = getWindowManager().getDefaultDisplay();// 获取屏幕当前分辨率
int displayWidth = currDisplay.getWidth();
int displayHeight = currDisplay.getHeight();
one = displayWidth / 4; // 设置水平动画平移大小
two = one * 2;
three = one * 3;
// Log.i("info", "获取的屏幕分辨率为" + one + two + three + "X" + displayHeight);

// InitImageView();//使用动画
// 将要分页显示的View装入数组中
LayoutInflater mLi = LayoutInflater.from(this);
View view1 = mLi.inflate(R.layout.homepage_layout, null);
View view2 = mLi.inflate(R.layout.message_layout, null);
View view3 = mLi.inflate(R.layout.nearby_layout, null);
View view4 = mLi.inflate(R.layout.mine_layout, null);

// exitLoginButton = (Button) view4.findViewById(R.id.login_or_exit);
// loginName = (TextView) view4.findViewById(R.id.login_name);

// 每个页面的view数据
final ArrayList<View> views = new ArrayList<View>();
views.add(view1);
views.add(view2);
views.add(view3);
views.add(view4);
// 填充ViewPager的数据适配器
PagerAdapter mPagerAdapter = new PagerAdapter() {

@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}

@Override
public int getCount() {
return views.size();
}

@Override
public void destroyItem(View container, int position, Object object) {
((ViewPager) container).removeView(views.get(position));
}

@Override
public Object instantiateItem(View container, int position) {
((ViewPager) container).addView(views.get(position));
return views.get(position);
}
};

mTabPager.setAdapter(mPagerAdapter);


}


/**
 * 头标点击监听
 */
public class MyOnClickListener implements View.OnClickListener {
private int index = 0;

public MyOnClickListener(int i) {
index = i;
}

@Override
public void onClick(View v) {
mTabPager.setCurrentItem(index);
}
};

/*
 * 页卡切换监听(原作者:D.Winter)
 */
public class MyOnPageChangeListener implements OnPageChangeListener {
@Override
public void onPageSelected(int arg0) {
Animation animation = null;
switch (arg0) {
case 0:
mTab1.setImageDrawable(getResources().getDrawable(
R.drawable.tab_weixin_pressed));
if (currIndex == 1) {
animation = new TranslateAnimation(one, 0, 0, 0);
mTab2.setImageDrawable(getResources().getDrawable(
R.drawable.tab_address_normal));
} else if (currIndex == 2) {
animation = new TranslateAnimation(two, 0, 0, 0);
mTab3.setImageDrawable(getResources().getDrawable(
R.drawable.tab_find_frd_normal));
} else if (currIndex == 3) {
animation = new TranslateAnimation(three, 0, 0, 0);
mTab4.setImageDrawable(getResources().getDrawable(
R.drawable.tab_settings_normal));
}
break;
case 1:
mTab2.setImageDrawable(getResources().getDrawable(
R.drawable.tab_address_pressed));
if (currIndex == 0) {
animation = new TranslateAnimation(zero, one, 0, 0);
mTab1.setImageDrawable(getResources().getDrawable(
R.drawable.tab_weixin_normal));
} else if (currIndex == 2) {
animation = new TranslateAnimation(two, one, 0, 0);
mTab3.setImageDrawable(getResources().getDrawable(
R.drawable.tab_find_frd_normal));
} else if (currIndex == 3) {
animation = new TranslateAnimation(three, one, 0, 0);
mTab4.setImageDrawable(getResources().getDrawable(
R.drawable.tab_settings_normal));
}
break;
case 2:
mTab3.setImageDrawable(getResources().getDrawable(
R.drawable.tab_find_frd_pressed));
if (currIndex == 0) {
animation = new TranslateAnimation(zero, two, 0, 0);
mTab1.setImageDrawable(getResources().getDrawable(
R.drawable.tab_weixin_normal));
} else if (currIndex == 1) {
animation = new TranslateAnimation(one, two, 0, 0);
mTab2.setImageDrawable(getResources().getDrawable(
R.drawable.tab_address_normal));
} else if (currIndex == 3) {
animation = new TranslateAnimation(three, two, 0, 0);
mTab4.setImageDrawable(getResources().getDrawable(
R.drawable.tab_settings_normal));
}
break;
case 3:
mTab4.setImageDrawable(getResources().getDrawable(
R.drawable.tab_settings_pressed));
if (currIndex == 0) {
animation = new TranslateAnimation(zero, three, 0, 0);
mTab1.setImageDrawable(getResources().getDrawable(
R.drawable.tab_weixin_normal));
} else if (currIndex == 1) {
animation = new TranslateAnimation(one, three, 0, 0);
mTab2.setImageDrawable(getResources().getDrawable(
R.drawable.tab_address_normal));
} else if (currIndex == 2) {
animation = new TranslateAnimation(two, three, 0, 0);
mTab3.setImageDrawable(getResources().getDrawable(
R.drawable.tab_find_frd_normal));
}
break;
}
currIndex = arg0;
animation.setFillAfter(true);// True:图片停在动画结束位置
animation.setDuration(150);
mTabImg.startAnimation(animation);
}

@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}

@Override
public void onPageScrollStateChanged(int arg0) {
}
}
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

首页-底部Tab导航(菜单栏)的实现:FragmentTabHost+ViewPager+Fragment

前言Android开发中使用底部菜单栏的频次非常高,这篇文章主要讲解的是用FragmentTabHost+ViewPager+Fragment实现首页底部Tab菜单栏

首页-底部&顶部Tab导航(菜单栏)的实现:TabLayout+ViewPager+Fragment

前言Android开发中使用顶部 & 底部Tab导航栏的频次非常高,主要的实现手段有以下: TabWidget 隐藏TabWidget,使用RadioGroup和RadioButton Fragmen...

(4.1.8.2)【Android UI设计与开发】第07期:底部菜单栏(二)Fragment的详细介绍和使用方法

转载请注明出处:http://blog.csdn.net/yangyu20121224/article/details/8995025                 由于TabActivity...

使用TabHost实现底部菜单栏

  • 2017-06-29 11:40
  • 4.08MB
  • 下载

Android开发——使用fragment仿微信底部菜单栏

Android在3.0版本加入了Fragment,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以。然而现在Fragment的应用的场...

使用TabHost实现类网易新闻-底部固定菜单栏

Activity代码

使用DrawerLayout,FragmentTabHost实现测滑式底部菜单栏界面

最近学习了DrawerLayout,闲来无事把自己的学习记录记录下来: 首先是DrawerLayout布局 mainlayout.xml <android.supp...

使用fragmentTableHost实现底部菜单栏

1底部菜单的几种实现方式: TabHost+Activity RadioButton+Fragment 这种方法使用RadioGroup来实现RadioButton的互斥选择,而且需要在activit...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)