public class HomeActivity extends AppCompatActivity {
public ViewPager mVpager;
public ArrayList<View> mAList;
private MyPagerAdapter mAdapter;
private LinearLayout mRLayout1;
private LinearLayout mRLayout2;
private LinearLayout mRLayout3;
private TextView mHomeTextView1;
private TextView mHomeTextView2;
private TextView mHomeTextView3;
private TextView mTvUser;
private ImageView mImageView1;
private ImageView mImageView2;
private ImageView mImageView3;
int i;
private String mUserCode;
private String mUserName;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
//TextView etVersionName = findViewById(R.id.versionName);
//etVersionName.append(ApkVersion.getVerName(this));
//权限申请
if (ContextCompat.checkSelfPermission(HomeActivity.this, android.Manifest.
permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(HomeActivity.this, new
String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
}
//本地读取登录用户名--测试时关掉
SharedPreferences pref = getSharedPreferences("LoginData", MODE_PRIVATE);
mUserCode = pref.getString("userCode", "");
mUserName = pref.getString("userName", "");
mTvUser = findViewById(R.id.user);
mVpager = findViewById(R.id.viewPage);
mAList = new ArrayList<View>();
LayoutInflater li = getLayoutInflater();
mAList.add(li.inflate(R.layout.home_vpager1, null, false));
mAList.add(li.inflate(R.layout.home_vpager2, null, false));
mAList.add(li.inflate(R.layout.home_vpager3, null, false));
mAdapter = new MyPagerAdapter(mAList);
mVpager.setAdapter(mAdapter);
mVpager.setCurrentItem(1);
//获取控件id
mRLayout1 = findViewById(R.id.homeLayout1);
mRLayout1.setOnClickListener(new rLayout1ClickListener());
mRLayout2 = findViewById(R.id.homeLayout2);
mRLayout2.setOnClickListener(new rLayout2ClickListener());
mRLayout3 = findViewById(R.id.homeLayout3);
mRLayout3.setOnClickListener(new rLayout3ClickListener());
mHomeTextView1 = findViewById(R.id.tView1);
mHomeTextView2 = findViewById(R.id.tView2);
mHomeTextView3 = findViewById(R.id.tView3);
mImageView1 = findViewById(R.id.imageView1);
mImageView2 = findViewById(R.id.imageView2);
mImageView3 = findViewById(R.id.imageView3);
//默认主页选中色
slideChangeColor(1);
//滑动监听
mVpager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// arg0是当前选中的页面的Position
//Log.e(TAG, "onPageSelected------>"+arg0);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// arg0 :当前页面,及你点击滑动的页面;arg1:当前页面偏移的百分比;arg2:当前页面偏移的像素位置
//Log.e(TAG, "onPageScrolled------>arg0:"+arg0+"\nonPageScrolled------>arg1:"+arg1+"\nonPageScrolled------>arg2:"+arg2);
}
@Override
public void onPageScrollStateChanged(int arg0) {
i = mVpager.getCurrentItem();
//arg0 ==1的时表示正在滑动,arg0==2的时表示滑动完毕了,arg0==0的时表示什么都没做。
if (arg0 == 0) {
//Log.e(TAG, "onPageScrollStateChanged------>0");
} else if (arg0 == 1) {
//Log.e(TAG, "onPageScrollStateChanged------>1");
} else if (arg0 == 2) {
slideChangeColor(i);
}
}
});
}
//点击底部各Layout变色
class rLayout1ClickListener implements View.OnClickListener {
@Override
public void onClick(View v) {
mVpager.setCurrentItem(0);
//根据资源文件读取颜色
slideChangeColor(0);
}
}
class rLayout2ClickListener implements View.OnClickListener {
@Override
public void onClick(View v) {
mVpager.setCurrentItem(1);
slideChangeColor(1);
}
}
class rLayout3ClickListener implements View.OnClickListener {
@Override
public void onClick(View v) {
mVpager.setCurrentItem(2);
slideChangeColor(2);
mTvUser.setText(mUserCode + " " + mUserName);
}
}
//滑动底部图片和文字变色
private void slideChangeColor(int i) {
if (i == 0) {
mHomeTextView1.setTextColor(Color.parseColor("#1296db"));
mImageView1.setImageDrawable(getResources().getDrawable(R.drawable.volume2));
mHomeTextView2.setTextColor(Color.parseColor("#cdcdcd"));
mImageView2.setImageDrawable(getResources().getDrawable(R.drawable.home1));
mHomeTextView3.setTextColor(Color.parseColor("#cdcdcd"));
mImageView3.setImageDrawable(getResources().getDrawable(R.drawable.person1));
} else if (i == 1) {
mHomeTextView2.setTextColor(Color.parseColor("#1296db"));
mImageView2.setImageDrawable(getResources().getDrawable(R.drawable.home2));
mHomeTextView1.setTextColor(Color.parseColor("#cdcdcd"));
mImageView1.setImageDrawable(getResources().getDrawable(R.drawable.volume1));
mHomeTextView3.setTextColor(Color.parseColor("#cdcdcd"));
mImageView3.setImageDrawable(getResources().getDrawable(R.drawable.person1));
} else if (i == 2) {
mHomeTextView3.setTextColor(Color.parseColor("#1296db"));
mImageView3.setImageDrawable(getResources().getDrawable(R.drawable.person2));
mHomeTextView2.setTextColor(Color.parseColor("#cdcdcd"));
mImageView2.setImageDrawable(getResources().getDrawable(R.drawable.home1));
mHomeTextView1.setTextColor(Color.parseColor("#cdcdcd"));
mImageView1.setImageDrawable(getResources().getDrawable(R.drawable.volume1));
}
}
}