HomeActivity.java 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. package com.uas.standard_esop.activity;
  2. import android.content.Intent;
  3. import android.content.pm.PackageManager;
  4. import android.graphics.drawable.BitmapDrawable;
  5. import android.os.Bundle;
  6. import android.view.Gravity;
  7. import android.view.MotionEvent;
  8. import android.view.View;
  9. import android.widget.AdapterView;
  10. import android.widget.GridView;
  11. import android.widget.LinearLayout;
  12. import android.widget.PopupWindow;
  13. import android.widget.SimpleAdapter;
  14. import android.widget.TextView;
  15. import androidx.annotation.NonNull;
  16. import com.uas.standard_esop.R;
  17. import com.uas.standard_esop.application.PdaApplication;
  18. import com.uas.standard_esop.fragment.BaseFragment;
  19. import com.uas.standard_esop.global.GloableParams;
  20. import com.uas.standard_esop.tools.DataSourceManager;
  21. import com.uas.standard_esop.tools.VolleyUtil;
  22. import com.uas.standard_esop.util.CommonUtil;
  23. import com.uas.standard_esop.util.PermissionUtil;
  24. import java.util.ArrayList;
  25. import java.util.HashMap;
  26. public class HomeActivity extends BaseActivity implements AdapterView.OnItemClickListener {
  27. private ArrayList<HashMap<String, Object>> gridItemList;
  28. private GridView menuGridView;
  29. private TextView actionbarTextVeiw;
  30. int pageType = VolleyUtil.ACTIVITY_MENU;
  31. private PopupWindow mExitPopupWindow;
  32. private TextView mCancelTextView, mMinimizeTextView, mExitTextView;
  33. public BaseFragment fragment;
  34. @Override
  35. protected void onDestroy() {
  36. //清除全部App缓存
  37. // SharedPreUtil.removeAll(getApplicationContext());
  38. VolleyUtil.distoryVolley();
  39. super.onDestroy();
  40. }
  41. @Override
  42. protected void onCreate(Bundle savedInstanceState) {
  43. super.onCreate(savedInstanceState);
  44. }
  45. @Override
  46. protected void initViews() {
  47. setContentView(R.layout.activity_home);
  48. menuGridView = (GridView) findViewById(R.id.grid_menu);
  49. actionbarTextVeiw = (TextView) findViewById(R.id.actionbar);
  50. actionbarTextVeiw.setText("UAS-ESOP在线调阅");
  51. menuGridView.setNumColumns(2);
  52. gridItemList = DataSourceManager.getDataSourceManager().getHomeGridItemList();
  53. SimpleAdapter adapter = new SimpleAdapter(this, gridItemList, R.layout.item_grid,
  54. new String[]{DataSourceManager.KEY_GRID_ITEMIMG, DataSourceManager.KEY_GRID_ITEMNAME},
  55. new int[]{R.id.griditem_img, R.id.griditem_name});
  56. menuGridView.setAdapter(adapter);
  57. View view = View.inflate(this, R.layout.pop_exit_application, null);
  58. mCancelTextView = (TextView) view.findViewById(R.id.pop_exit_cancel_tv);
  59. mMinimizeTextView = (TextView) view.findViewById(R.id.pop_exit_minimize_tv);
  60. mExitTextView = (TextView) view.findViewById(R.id.pop_exit_exit_tv);
  61. mExitPopupWindow = new PopupWindow(view, LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
  62. mExitPopupWindow.setBackgroundDrawable(new BitmapDrawable());
  63. mExitPopupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
  64. @Override
  65. public void onDismiss() {
  66. closeExitPopupWindow();
  67. }
  68. });
  69. }
  70. @Override
  71. protected void initEvents() {
  72. menuGridView.setOnItemClickListener(this);
  73. menuGridView.setOnTouchListener(new View.OnTouchListener() {
  74. @Override
  75. public boolean onTouch(View v, MotionEvent event) {
  76. //控制gridView不滚动
  77. if (event.getAction() == MotionEvent.ACTION_MOVE)
  78. return true;
  79. return false;
  80. }
  81. });
  82. mCancelTextView.setOnClickListener(new View.OnClickListener() {
  83. @Override
  84. public void onClick(View v) {
  85. closeExitPopupWindow();
  86. }
  87. });
  88. mExitTextView.setOnClickListener(new View.OnClickListener() {
  89. @Override
  90. public void onClick(View v) {
  91. PdaApplication.removeAllDataCache();
  92. System.exit(0);
  93. }
  94. });
  95. mMinimizeTextView.setOnClickListener(new View.OnClickListener() {
  96. @Override
  97. public void onClick(View v) {
  98. closeExitPopupWindow();
  99. moveTaskToBack(isFinishing());
  100. // Intent intent = new Intent(Intent.ACTION_MAIN);
  101. // intent.addCategory(Intent.CATEGORY_HOME);
  102. // intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  103. // startActivity(intent);
  104. }
  105. });
  106. }
  107. @Override
  108. protected void initDatas() {
  109. }
  110. @Override
  111. public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
  112. String itemName = (String) gridItemList.get(position).get(DataSourceManager.KEY_GRID_ITEMNAME);
  113. Intent intent = new Intent(HomeActivity.this, FunctionActivity.class);
  114. switch (itemName) {
  115. case GloableParams.WAREHOUSINGMANAGEMENT://入库管理
  116. intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  117. startActivity(intent);
  118. break;
  119. case GloableParams.OUTBOUNDMANAGEMENT://出库管理
  120. intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  121. startActivity(intent);
  122. break;
  123. case GloableParams.WAREHOUSEMANAGEMENT://仓库管理
  124. intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  125. startActivity(intent);
  126. break;
  127. case GloableParams.HOME_DISPATCH_MANAGE://工序管理
  128. startActivity(new Intent(HomeActivity.this, IndexActivity.class));
  129. break;
  130. case GloableParams.HOME_QUALITY_MANAGE://品质管理
  131. case GloableParams.GRIDNAME_SETTING://设置
  132. intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  133. startActivity(intent);
  134. break;
  135. // case GloableParams.QUERYSTATIONINFORMATION://过站信息查询
  136. // intent.putExtra(DataSourceManager.KEY_GRID_ITEMNAME, itemName);
  137. // startActivity(intent);
  138. // break;
  139. }
  140. }
  141. @Override
  142. public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
  143. super.onRequestPermissionsResult(requestCode, permissions, grantResults);
  144. if (requestCode == PermissionUtil.DEFAULT_REQUEST) {
  145. if (grantResults.length != 1 || grantResults[0] != PackageManager.PERMISSION_GRANTED) {
  146. //没有获取到权限
  147. } else {
  148. }
  149. }
  150. }
  151. @Override
  152. public void onBackPressed() {
  153. if (mExitPopupWindow.isShowing()) {
  154. closeExitPopupWindow();
  155. } else {
  156. if (mExitPopupWindow != null) {
  157. CommonUtil.setBackgroundAlpha(this, 0.5f);
  158. mExitPopupWindow.showAtLocation(getWindow().getDecorView(), Gravity.CENTER, 0, 0);
  159. }
  160. }
  161. }
  162. private void closeExitPopupWindow() {
  163. if (mExitPopupWindow != null) {
  164. mExitPopupWindow.dismiss();
  165. CommonUtil.setBackgroundAlpha(this, 1f);
  166. }
  167. }
  168. }