diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java index 227cea0..529cdeb 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java @@ -9,7 +9,6 @@ import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Color; import android.graphics.Matrix; -import android.graphics.Point; import android.os.Bundle; import android.os.Handler; import android.os.Message; @@ -100,12 +99,16 @@ import com.vividsolutions.jts.geom.MultiPoint; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; -import java.util.Timer; /** * 寻宝的Fragment @@ -137,10 +140,6 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen if (msg.what == 0x100) { isBack = false; } - if (msg.what == 0x101) { - initMessageNotice(); - Log.d("TAGss", "handleMessagesssss: "+msg); - } return false; } }); @@ -180,6 +179,27 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen * 刷新筛选界面数据 */ private void refreshFilterData() { + //获取系统当前的时间 + DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Calendar calendar = Calendar.getInstance(); + calendar.setTimeInMillis(System.currentTimeMillis()); + String format = formatter.format(calendar.getTime()); + + SharedPreferences messageTypeSp = getActivity().getSharedPreferences("messageType", Context.MODE_PRIVATE); + String dataTime = messageTypeSp.getString("dataTime", null); + int messageTypeSpInt = messageTypeSp.getInt("messageType", 0); + try { + Date parse = formatter.parse(format); + Date parse1 = formatter.parse(dataTime); + if (parse.getTime() + parse1.getTime() >= 1) { + initMessageNotice(); + Log.d("TAG", "refreshFilterData: " + parse + "和" + parse1); + } else { + return; + } + } catch (ParseException e) { + e.printStackTrace(); + } Message msg = Message.obtain(); msg.what = Constant.FILTER_DATA_CLEAR; EventBus.getDefault().post(msg); @@ -194,6 +214,36 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen } + /** + * 给时间加上几个小时 + * + * @param day 当前时间 格式:yyyy-MM-dd HH:mm:ss + * @param hour 需要加的时间 + * @return + */ + public static String addDateMinot(String day, int hour) { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date date = null; + try { + date = format.parse(day); + } catch (Exception ex) { + ex.printStackTrace(); + } + if (date == null) + return ""; + System.out.println("front:" + format.format(date)); //显示输入的日期 + Log.d("TAGss", "addDateMinut: " + format.format(date)); + Calendar cal = Calendar.getInstance(); + cal.setTime(date); + cal.add(Calendar.HOUR, hour);// 24小时制 + date = cal.getTime(); + System.out.println("after:" + format.format(date)); //显示更新后的日期 + Log.d("TAGss", "addDateMinut: " + format.format(date)); + cal = null; + return format.format(date); + + } + private void initMessageNotice() { HttpParams httpParams = new HttpParams("type", messageType + ""); OkGoBuilder.getInstance() @@ -215,8 +265,14 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen ivMassNotification.setVisibility(View.GONE); messageType = 0; } + //获取当前时间 + DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Calendar calendar = Calendar.getInstance(); + calendar.setTimeInMillis(System.currentTimeMillis()); + String format = formatter.format(calendar.getTime()); SharedPreferences.Editor spMessageType = getActivity().getSharedPreferences("messageType", getActivity().MODE_PRIVATE).edit(); spMessageType.putInt("messageType", messageType); + spMessageType.putString("dataTime", format); spMessageType.commit(); } else { Toast.makeText(getActivity(), messageNoticeBean.getMessage() + "", Toast.LENGTH_SHORT).show(); @@ -229,6 +285,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen Toast.makeText(getActivity(), e.getMessage(), Toast.LENGTH_SHORT).show(); } }); + } @Override @@ -255,11 +312,6 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen tencentMap = treasureMap.getMap(); ivMassNotification = findViewById(R.id.iv_mas_notification);//定时消息小红点 MapManager.getInstance().init(getActivity(), tencentMap); -// if (getClass().getCanonicalName().equals("PioFragment")){ -// ivMessage.setVisibility(View.VISIBLE); -// }else { -// ivMessage.setVisibility(View.GONE); -// } cbMapType = (CheckBox) findViewById(R.id.cb_map_type); sliding_layout.setScrollableViewHelper(new NestedScrollableViewHelper()); //地图转换 @@ -340,20 +392,6 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen int[] widthHeight = DensityUtil.getDeviceInfo(getActivity()); treasureMap.getLayoutParams().width = widthHeight[0]; treasureMap.getLayoutParams().height = widthHeight[1]; - - //消息通知: - SharedPreferences messageTypeSp = getActivity().getSharedPreferences("messageType", Context.MODE_PRIVATE); - int messageTypeSpInt = messageTypeSp.getInt("messageType", 0); - if (ivMessage .isClickable()){ - ivMassNotification.setVisibility(View.GONE); - messageType = 0; - }else { - ivMassNotification.setVisibility(View.VISIBLE); - messageType =1; - } - handler.sendEmptyMessageDelayed(0x101, 5000); - Log.d("TAG", "initViewsssssss: "+handler); - } /**