package com.example.xxx;
import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
import android.app.ActivityManager;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.ActivityManager.RunningServiceInfo;
import android.content.Context;
import android.content.Intent;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.os.Bundle;
import android.os.SystemClock;
import android.os.Vibrator;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.NotificationCompat;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.support.v7.widget.PopupMenu;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
public class eqpt_main extends FragmentActivity implements View.OnClickListener{
private ArrayList<Fragment> fragments;
private ViewPager viewPager;
private eqptViewPagerAdapter leadViewPagerAdapter;
// private eqpt_E eqpt_E;
private eqpt_A eqpt_A;
private eqpt_B eqpt_B;
private eqpt_C_new eqpt_C;
private eqpt_D eqpt_D;
private LinearLayout l5,l1,l2,l3,l4;
private ImageView test5,test1,test2,test3,test4;
private TextView text5,text1,text2,text3,text4;
private Button menu;
public String jobString;
private Context context;
private long exitTime = 0;
private String mTitles[] = {"保養本站設備", "保養記錄","填寫修理記錄", "維修記錄", "無"}; // "所有設備",
private TextView main_bar_left_title;
private TextView tv_new_msg5, tv_new_msg1,tv_new_msg2,tv_new_msg3,tv_new_msg4;
public String newString[][]=new String[90][3];
public String estiString[][]=new String[90][3];
public String comfirmString[][]=new String[90][3];
public String reviewString[][]=new String[90][3];
public int sum1=0,sum2=0,sum3=0,sum4=0,sum5=0;
public boolean isFirstLoading; //是否第一次加载
// 上下文
private Context mContext;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);// 去掉标题栏
setContentView(R.layout.eqptmain); //定义 Activity 界面的布局
ExitApplication.getInstance().addActivity(this); //添加当前activity,以便退出APP
// 隐藏状态栏
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
mContext = eqpt_main.this;
//第一次加载
isFirstLoading = true;
//登录页面过来的
Intent intent=getIntent();//获取上一页面传过来的数据
jobString=intent.getStringExtra("job");
tv_new_msg5=(TextView) findViewById(R.id.tv_new_msg5);
tv_new_msg1=(TextView) findViewById(R.id.tv_new_msg1);
tv_new_msg2=(TextView) findViewById(R.id.tv_new_msg2);
tv_new_msg3=(TextView) findViewById(R.id.tv_new_msg3);
tv_new_msg4=(TextView) findViewById(R.id.tv_new_msg4);
main_bar_left_title=(TextView) findViewById(R.id.main_bar_left_title);
menu=(Button) findViewById(R.id.menu);
test5 = (ImageView) findViewById(R.id.test5);
test1 = (ImageView) findViewById(R.id.test1);
test2 = (ImageView) findViewById(R.id.test2);
test3 = (ImageView) findViewById(R.id.test3);
test4 = (ImageView) findViewById(R.id.test4);
l5=(LinearLayout) findViewById(R.id.l5);
l1=(LinearLayout) findViewById(R.id.l1);
l2=(LinearLayout) findViewById(R.id.l2);
l3=(LinearLayout) findViewById(R.id.l3);
l4=(LinearLayout) findViewById(R.id.l4);
//底部菜单的监听事件
l5.setOnClickListener(this);
l1.setOnClickListener(this);
l2.setOnClickListener(this);
l3.setOnClickListener(this);
l4.setOnClickListener(this);
text5=(TextView) findViewById(R.id.text5);
text1=(TextView) findViewById(R.id.text1);
text2=(TextView) findViewById(R.id.text2);
text3=(TextView) findViewById(R.id.text3);
text4=(TextView) findViewById(R.id.text4);
text5.setText(mTitles[0]);
text1.setText(mTitles[1]);
text2.setText(mTitles[2]);
text3.setText(mTitles[3]);
text4.setText(mTitles[4]);
viewPager = (ViewPager) findViewById(R.id.viewpager);
// viewPager.setOffscreenPageLimit(0);// 设置缓存页面,当前页面的相邻N各页面都会被缓存--懒加载
// Log.i(TAG, "緩存頁面數量=="+viewPager.getOffscreenPageLimit() ); //默認為1,即默認預加載當前頁面左右一頁
//滑动页面监听事件
viewPager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
resetImg(); //将图片全部默认为不选中
int currentItem = viewPager.getCurrentItem();
switch (currentItem) {
case 0:
viewPager.setCurrentItem(0);
main_bar_left_title.setText(mTitles[0]);//设置页面标题
test5.setImageResource(R.drawable.icon_pressed);
text5.setTextColor(Color.rgb(69,192,24));
break;
case 1:
viewPager.setCurrentItem(1);
main_bar_left_title.setText(mTitles[1]);//设置页面标题
test1.setImageResource(R.drawable.icon_pressed);
text1.setTextColor(Color.rgb(69,192,24));
break;
case 2:
viewPager.setCurrentItem(2);
main_bar_left_title.setText(mTitles[2]);//设置页面标题
test2.setImageResource(R.drawable.icon_pressed);
text2.setTextColor(Color.rgb(69,192,24));
break;
case 3:
viewPager.setCurrentItem(3);
main_bar_left_title.setText(mTitles[3]);//设置页面标题
test3.setImageResource(R.drawable.icon_pressed);
text3.setTextColor(Color.rgb(69,192,24));
break;
case 4:
viewPager.setCurrentItem(4);
main_bar_left_title.setText(mTitles[4]);//设置页面标题
test4.setImageResource(R.drawable.icon_pressed);
text4.setTextColor(Color.rgb(69,192,24));
break;
default:
break;
}
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
fragments = new ArrayList<Fragment>();
// eqpt_E=new eqpt_E();
eqpt_A=new eqpt_A();
eqpt_B=new eqpt_B();
eqpt_C=new eqpt_C_new();
eqpt_D=new eqpt_D();
// fragments.add(eqpt_E);
fragments.add(eqpt_A);
fragments.add(eqpt_B);
fragments.add(eqpt_C);
fragments.add(eqpt_D);
leadViewPagerAdapter = new eqptViewPagerAdapter(getSupportFragmentManager(), fragments);
// 使用 PageTransformer 自定义动画--缩小页面转换器
viewPager.setPageTransformer(true, new ZoomOutPageTransformer());
//初始化选中页面
viewPager.setAdapter(leadViewPagerAdapter);
viewPager.setCurrentItem(0);
main_bar_left_title.setText(mTitles[0]);
test5.setImageResource(R.drawable.icon_pressed);
text5.setTextColor(Color.rgb(69,192,24));
//右上角菜单项
menu.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
showPopupMenu(v);
}
});
}
/**
* 将图标全部默认为不选中
*/
private void resetImg() {
test5.setImageResource(R.drawable.icon);
test1.setImageResource(R.drawable.icon);
test2.setImageResource(R.drawable.icon);
test3.setImageResource(R.drawable.icon);
test4.setImageResource(R.drawable.icon);
text5.setTextColor(Color.rgb(51,51,51));
text1.setTextColor(Color.rgb(51,51,51));
text2.setTextColor(Color.rgb(51,51,51));
text3.setTextColor(Color.rgb(51,51,51));
text4.setTextColor(Color.rgb(51,51,51));
}
/**
* 右上角菜单项
*/
private void showPopupMenu(View view) {
// 这里的view代表popupMenu需要依附的view
PopupMenu popupMenu = new PopupMenu(mContext, view);
// 获取布局文件
popupMenu.getMenuInflater().inflate(R.menu.main, popupMenu.getMenu());
popupMenu.show();
//设置菜单项是否显示
popupMenu.getMenu().findItem(R.id.scan_eqpt).setVisible(true);
// 通过上面这几行代码,就可以把控件显示出来了
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
// 控件每一个item的点击事件
int id = item.getItemId();
if(id == R.id.manage_eqpt) {
Intent intent=new Intent(mContext,manage_main.class);
intent.putExtra("job", jobString);
startActivity(intent);
}
else if(id == R.id.update_pass) {
Intent intent=new Intent(mContext,change_pass.class);
intent.putExtra("job", jobString);
startActivity(intent);
}
else {
Toast.makeText(mContext, "沒有該菜單頁", Toast.LENGTH_SHORT).show();
}
return true;
}
});
popupMenu.setOnDismissListener(new PopupMenu.OnDismissListener() {
@Override
public void onDismiss(PopupMenu menu) {
// 控件消失时的事件
}
});
}
/**
* 点击转换页面时,变换图标--监听底部菜单事件
*/
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.l5:
viewPager.setCurrentItem(0);
main_bar_left_title.setText(mTitles[0]);//设置页面标题
resetImg(); //将图片全部默认为不选中
test5.setImageResource(R.drawable.icon_pressed); //设置选中页面的图标
text5.setTextColor(Color.rgb(69,192,24));
break;
case R.id.l1:
viewPager.setCurrentItem(1);
main_bar_left_title.setText(mTitles[1]);//设置页面标题
resetImg(); //将图片全部默认为不选中
test1.setImageResource(R.drawable.icon_pressed); //设置选中页面的图标
text1.setTextColor(Color.rgb(69,192,24));
break;
case R.id.l2:
viewPager.setCurrentItem(2);
main_bar_left_title.setText(mTitles[2]);
resetImg(); //将图片全部默认为不选中
test2.setImageResource(R.drawable.icon_pressed);
text2.setTextColor(Color.rgb(69,192,24));
break;
case R.id.l3:
viewPager.setCurrentItem(3);
main_bar_left_title.setText(mTitles[3]);
resetImg(); //将图片全部默认为不选中
test3.setImageResource(R.drawable.icon_pressed);
text3.setTextColor(Color.rgb(69,192,24));
break;
case R.id.l4:
Toast.makeText(mContext, "該頁面暫無內容!", Toast.LENGTH_LONG).show();
// viewPager.setCurrentItem(4);
// main_bar_left_title.setText(mTitles[4]);
// resetImg(); //将图片全部默认为不选中
// test4.setImageResource(R.drawable.icon_pressed);
// text4.setTextColor(Color.rgb(69,192,24));
break;
}
}
/**
* 双击2次返回键退出程序
*/
@Override
public void onBackPressed() {
if ((System.currentTimeMillis() - exitTime) > 2000) {
Toast.makeText(mContext, "再按一次返回键退出程序", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
}
else {
ExitApplication.getInstance().exit();
}
}
// 使用 PageTransformer 自定义动画--在相邻页面之间滚动时,该页面转换器会使页面收缩并淡出。随着页面越来越靠近中心,页面会恢复到正常大小并淡入。
public class ZoomOutPageTransformer implements ViewPager.PageTransformer {
private static final float MIN_SCALE = 0.85f;
private static final float MIN_ALPHA = 0.5f;
public void transformPage(View view, float position) {
int pageWidth = view.getWidth();
int pageHeight = view.getHeight();
if (position < -1) { // [-Infinity,-1)
// This page is way off-screen to the left.
view.setAlpha(0f);
} else if (position <= 1) { // [-1,1]
// Modify the default slide transition to shrink the page as well
float scaleFactor = Math.max(MIN_SCALE, 1 - Math.abs(position));
float vertMargin = pageHeight * (1 - scaleFactor) / 2;
float horzMargin = pageWidth * (1 - scaleFactor) / 2;
if (position < 0) {
view.setTranslationX(horzMargin - vertMargin / 2);
} else {
view.setTranslationX(-horzMargin + vertMargin / 2);
}
// Scale the page down (between MIN_SCALE and 1)
view.setScaleX(scaleFactor);
view.setScaleY(scaleFactor);
// Fade the page relative to its size.
view.setAlpha(MIN_ALPHA +
(scaleFactor - MIN_SCALE) /
(1 - MIN_SCALE) * (1 - MIN_ALPHA));
} else { // (1,+Infinity]
// This page is way off-screen to the right.
view.setAlpha(0f);
}
}
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
// Log.i(TAG, "System.exit(0) 销毁所有资源,会把service同时销毁,定时任务被结束");
// System.exit(0);
}
}
版权声明:本文为weixuan_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。