Browse Source

日程提醒gui更新
新增生日事件删除接口
新增周一到周日重复性选择功能
新增颜色选择事件
红花榜文案调整
增加日程各事件提醒增删改查完毕后activity跳转的刷新事件
增加月日历快速定位功能
删除好友验证开关
关闭k2蓝牙防丢入口

bruce.jiang 9 years ago
parent
commit
27c0a77f78
62 changed files with 1138 additions and 947 deletions
  1. 9 3
      app/build.gradle
  2. 17 3
      app/src/main/java/cn/artimen/appring/component/VersionMatch/VersionMatch.java
  3. 1 0
      app/src/main/java/cn/artimen/appring/constant/Constant.java
  4. 10 0
      app/src/main/java/cn/artimen/appring/data/bean/ChildTrackInfo.java
  5. 24 3
      app/src/main/java/cn/artimen/appring/k2/adapter/DailyTaskDateAdapter.java
  6. 8 0
      app/src/main/java/cn/artimen/appring/k2/adapter/DailyTaskEventAdapter.java
  7. 17 1
      app/src/main/java/cn/artimen/appring/k2/database/DailyTaskDatabaseManager.java
  8. 1 1
      app/src/main/java/cn/artimen/appring/k2/entity/TaskDateBean.java
  9. 10 4
      app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/AddNotifyActivity.java
  10. 110 19
      app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/BirthdayActivity.java
  11. 165 19
      app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/CustomNotifyActivity.java
  12. 67 7
      app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/DailyTaskListActivity.java
  13. 73 5
      app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/DailyTaskMonthActivity.java
  14. 150 16
      app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/WakeUpOrSleepTaskActivity.java
  15. 1 0
      app/src/main/java/cn/artimen/appring/k2/ui/main/LeftMenuFragment.java
  16. 8 0
      app/src/main/java/cn/artimen/appring/k2/ui/main/RightMenuFragment.java
  17. 52 2
      app/src/main/java/cn/artimen/appring/k2/utils/FormatUtils.java
  18. 46 6
      app/src/main/java/cn/artimen/appring/ui/avtivity/main/MainActivity.java
  19. 6 0
      app/src/main/res/color/text_color_week.xml
  20. 6 0
      app/src/main/res/drawable/bg_blue.xml
  21. 6 0
      app/src/main/res/drawable/bg_green.xml
  22. 6 0
      app/src/main/res/drawable/bg_purple.xml
  23. 6 0
      app/src/main/res/drawable/bg_red.xml
  24. 2 2
      app/src/main/res/drawable/bg_week_checked.xml
  25. 5 2
      app/src/main/res/drawable/bg_week_normal.xml
  26. 6 0
      app/src/main/res/drawable/bg_yellow.xml
  27. 64 16
      app/src/main/res/layout/activity_add_notify.xml
  28. 18 1
      app/src/main/res/layout/activity_birthday.xml
  29. 110 17
      app/src/main/res/layout/activity_custom_notify.xml
  30. 9 8
      app/src/main/res/layout/activity_daily_task_list.xml
  31. 15 5
      app/src/main/res/layout/activity_daily_task_month.xml
  32. 58 13
      app/src/main/res/layout/activity_wake_up_task.xml
  33. 6 0
      app/src/main/res/layout/activity_watch_settings.xml
  34. 5 4
      app/src/main/res/layout/view_dailytask_date.xml
  35. 15 1
      app/src/main/res/layout/view_dailytask_task.xml
  36. 16 2
      app/src/main/res/values-zh-rCN/strings.xml
  37. 9 1
      app/src/main/res/values/draws.xml
  38. 0 1
      app/src/main/res/values/strings.xml
  39. 0 22
      calendarcard/build.gradle
  40. 0 11
      calendarcard/src/main/AndroidManifest.xml
  41. 0 241
      calendarcard/src/main/java/com/wt/calendarcard/CalendarCard.java
  42. 0 54
      calendarcard/src/main/java/com/wt/calendarcard/CalendarCardPager.java
  43. 0 52
      calendarcard/src/main/java/com/wt/calendarcard/CardGridItem.java
  44. 0 68
      calendarcard/src/main/java/com/wt/calendarcard/CardPagerAdapter.java
  45. 0 84
      calendarcard/src/main/java/com/wt/calendarcard/CheckableLayout.java
  46. 0 9
      calendarcard/src/main/java/com/wt/calendarcard/OnCellItemClick.java
  47. 0 8
      calendarcard/src/main/java/com/wt/calendarcard/OnItemRender.java
  48. BIN
      calendarcard/src/main/res/drawable-hdpi/ic_launcher.png
  49. BIN
      calendarcard/src/main/res/drawable-mdpi/ic_launcher.png
  50. BIN
      calendarcard/src/main/res/drawable-xhdpi/ic_launcher.png
  51. BIN
      calendarcard/src/main/res/drawable-xxhdpi/ic_launcher.png
  52. 0 5
      calendarcard/src/main/res/drawable/card_grid_bg.xml
  53. 0 27
      calendarcard/src/main/res/drawable/card_item_bg.xml
  54. 0 9
      calendarcard/src/main/res/layout/card_cell.xml
  55. 0 6
      calendarcard/src/main/res/layout/card_item_simple.xml
  56. 0 15
      calendarcard/src/main/res/layout/card_row.xml
  57. 0 97
      calendarcard/src/main/res/layout/card_view.xml
  58. 0 6
      calendarcard/src/main/res/values/colors.xml
  59. 0 7
      calendarcard/src/main/res/values/dimens.xml
  60. 0 6
      calendarcard/src/main/res/values/strings.xml
  61. 0 57
      calendarcard/src/main/res/values/styles.xml
  62. 1 1
      settings.gradle

+ 9 - 3
app/build.gradle

@@ -13,8 +13,8 @@ android {
         applicationId "cn.artimen.appring"
         minSdkVersion 14
         targetSdkVersion 21
-        versionCode 330
-        versionName "3.3"
+        versionCode 331
+        versionName "3.3.1"
         //manifestPlaceholders=[UMENG_CHANNEL_VALUE:name]
     }
 
@@ -111,6 +111,13 @@ android {
         }
     }
 
+    lintOptions {
+        abortOnError false
+        checkReleaseBuilds false
+        // 防止在发布的时候出现因MissingTranslation导致Build Failed!
+        disable 'MissingTranslation'
+    }
+
 }
 
 dependencies {
@@ -125,7 +132,6 @@ dependencies {
     compile files('libs/zxing.jar')
     compile files('libs/core.jar')
     compile files('libs/com.umeng.fb.5.4.0.jar')
-    compile project(':calendarcard')
     compile project(':social_sdk_library_project')
     compile 'com.android.support:appcompat-v7:21.0.3'
     compile 'com.umeng.analytics:analytics:latest.integration'

+ 17 - 3
app/src/main/java/cn/artimen/appring/component/VersionMatch/VersionMatch.java

@@ -37,6 +37,15 @@ public class VersionMatch {
         return idx != -1;
     }
 
+    public static boolean isK2(){
+        String version = VersionMatch.getWatchVersion();
+        if (version.equals("") || version.length() == 0)
+            return false;
+
+        String prefix = "K2";
+        int idx = version.indexOf(prefix);
+        return idx != -1;
+    }
     private static int getNumber()
     {
         String version = VersionMatch.getWatchVersion();
@@ -59,6 +68,8 @@ public class VersionMatch {
         //K1S全支持
         if (VersionMatch.isK1S())
             return true;
+        if(VersionMatch.isK2())
+            return true;
 
         return VersionMatch.getNumber()>=18;
     }
@@ -69,7 +80,8 @@ public class VersionMatch {
         //K1S全支持
         if (VersionMatch.isK1S())
             return true;
-
+        if (VersionMatch.isK2())
+            return true;
         return VersionMatch.getNumber()>=19;
     }
 
@@ -79,7 +91,8 @@ public class VersionMatch {
         //K1S全支持
         if (VersionMatch.isK1S())
             return true;
-
+        if (VersionMatch.isK2())
+            return true;
         return VersionMatch.getNumber()>=20;
     }
 
@@ -117,7 +130,8 @@ public class VersionMatch {
         //K1S全支持
         if (VersionMatch.isK1S())
             return true;
-
+        if (VersionMatch.isK2())
+            return true;
         //k1全不支持
         return false;
     }

+ 1 - 0
app/src/main/java/cn/artimen/appring/constant/Constant.java

@@ -110,6 +110,7 @@ public class Constant {
     public final static String WEEK_FORMAT ="EEE";
     public final static String CUSTOM_DATE_FORMAT ="MMM d";
     public final static String CUSTOM_TIME_FORMAT ="MMM d日 EEE a h:mm";
+    public final static String TIME_FORMAT ="hh:mm";
 
     public final static String GUARDIAN_ICON_PREFIX = "k2_app_login_guardian_";
     public final static int GUARDIAN_ICON_COUNT = 14;

+ 10 - 0
app/src/main/java/cn/artimen/appring/data/bean/ChildTrackInfo.java

@@ -39,6 +39,8 @@ public class ChildTrackInfo implements Serializable {
 
     private ClassScheduleBean Schedule;
 
+    private String Brithday;//生日
+
     @Expose
     private String address;
 
@@ -245,6 +247,14 @@ public class ChildTrackInfo implements Serializable {
         return VersionMatch.checkWatchIsSupportLocation(version);
     }
 
+    public String getBrithday() {
+        return Brithday;
+    }
+
+    public void setBrithday(String brithday) {
+        Brithday = brithday;
+    }
+
     @Override
     public String toString()
     {

+ 24 - 3
app/src/main/java/cn/artimen/appring/k2/adapter/DailyTaskDateAdapter.java

@@ -49,15 +49,36 @@ public class DailyTaskDateAdapter extends RecyclerView.Adapter {
     @Override
     public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
         final DateHolder dateholder = (DateHolder) holder;
-        dateholder.tvWeek.setText(FormatUtils.getWeekday(mDates[position],Constant.DATE_FORMAT));
+        String weekStr = FormatUtils.getWeekday(mDates[position],Constant.DATE_FORMAT);
+        dateholder.tvWeek.setText(weekStr);
         dateholder.tvDate.setText(FormatUtils.getDay(mDates[position],Constant.DATE_FORMAT));
         dateholder.tvChineseDate.setText(FormatUtils.getChineseDay(mDates[position],Constant.DATE_FORMAT));
+
+        if("六".equals(weekStr)||"日".equals(weekStr)){
+            dateholder.tvWeek.setTextColor(mContext.getResources().getColor(R.color.gray));
+        }else{
+            dateholder.tvWeek.setTextColor(mContext.getResources().getColor(R.color.black));
+        }
+
         if (position == selectItem) {
             dateholder.lytDate.setBackgroundResource(R.drawable.k2_app_rightmenu_calendar_bg);
+            dateholder.tvDate.setTextColor(mContext.getResources().getColor(R.color.white));
+            dateholder.tvChineseDate.setTextColor(mContext.getResources().getColor(R.color.white));
         }
         else {
             dateholder.lytDate.setBackgroundColor(Color.TRANSPARENT);
+            if("六".equals(weekStr)||"日".equals(weekStr)){
+                dateholder.tvDate.setTextColor(mContext.getResources().getColor(R.color.gray));
+            }else {
+                dateholder.tvDate.setTextColor(mContext.getResources().getColor(R.color.black));
+            }
+            dateholder.tvChineseDate.setTextColor(mContext.getResources().getColor(R.color.gray));
+            if(FormatUtils.getCurrentDate(Constant.DATE_FORMAT).equals(mDates[position])){
+                dateholder.tvDate.setTextColor(mContext.getResources().getColor(R.color.base_blue));
+                dateholder.tvChineseDate.setTextColor(mContext.getResources().getColor(R.color.base_blue));
+            }
         }
+
     }
 
     @Override
@@ -82,14 +103,14 @@ public class DailyTaskDateAdapter extends RecyclerView.Adapter {
 
         @Override
         public void onClick(View v) {
-            mListener.onItemClick(v,getPosition());
+            mListener.onItemClick(getPosition());
 
         }
 
     }
 
     public interface DateItemClickListener {
-        public void onItemClick(View view,int postion);
+        public void onItemClick(int postion);
     }
 
     public  void setSelectItem(int selectItem) {

+ 8 - 0
app/src/main/java/cn/artimen/appring/k2/adapter/DailyTaskEventAdapter.java

@@ -1,9 +1,11 @@
 package cn.artimen.appring.k2.adapter;
 
 import android.content.Context;
+import android.content.res.TypedArray;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.ImageView;
 import android.widget.TextView;
 
 import java.util.List;
@@ -16,9 +18,11 @@ import cn.artimen.appring.ui.adapter.base.CustomBaseAdapter;
  * Created by jzf on 2016/4/29.
  */
 public class DailyTaskEventAdapter extends CustomBaseAdapter<TaskDateBean> {
+    TypedArray colorImages;
     public DailyTaskEventAdapter(Context context, List<TaskDateBean> list) {
         mContext = context;
         mItems = list;
+        colorImages = mContext.getResources().obtainTypedArray(R.array.color_images);
     }
 
     @Override
@@ -32,6 +36,7 @@ public class DailyTaskEventAdapter extends CustomBaseAdapter<TaskDateBean> {
             holder.tv_meridiem=(TextView)convertView.findViewById(R.id.tv_meridiem);
             holder.tv_time=(TextView)convertView.findViewById(R.id.tv_time);
             holder.tv_event=(TextView)convertView.findViewById(R.id.tv_event);
+            holder.iv_color= (ImageView) convertView.findViewById(R.id.iv_color);
             convertView.setTag(holder);
         }
         else
@@ -42,6 +47,8 @@ public class DailyTaskEventAdapter extends CustomBaseAdapter<TaskDateBean> {
         holder.tv_meridiem.setText(getMeridiem(bean.getRemindTime()));
         holder.tv_time.setText( bean.getRemindTime());
         holder.tv_event.setText(bean.getRemindContent());
+
+        holder.iv_color.setImageResource(colorImages.getResourceId(bean.getColour(),R.color.transparent));
         return convertView;
     }
 
@@ -62,5 +69,6 @@ public class DailyTaskEventAdapter extends CustomBaseAdapter<TaskDateBean> {
         TextView tv_meridiem;
         TextView tv_time;
         TextView tv_event;
+        ImageView iv_color;
     }
 }

+ 17 - 1
app/src/main/java/cn/artimen/appring/k2/database/DailyTaskDatabaseManager.java

@@ -114,9 +114,25 @@ public class DailyTaskDatabaseManager {
     private void updateBean(TaskDateBean bean){
         String deleteStr = String.format("update '%s' set ChildId =?,RemindContent=? ,Type=?,RemindDate=?,WeekDay=?,"+
                 "RemindTime=?, AdvanceDay=?,Colour=?,OperationTime=?,OperationType=?,loop=? where Id = ?", mPrivateDBName);
+        int loop = 0;
+        JSONObject weekobj = null;
+        try {
+            weekobj = new JSONObject(bean.getWeekDay());
+            for(int i=1;i<8;i++){
+                if("1".equals(weekobj.getString(""+i))){
+                    loop=1;
+                    break;
+                }
+            }
+        } catch (JSONException e) {
+            e.printStackTrace();
+        }
+
+
+
         Object[] value = new Object[]{bean.getChildId(),bean.getRemindContent(),bean.getType(),bean.getRemindDate(),
                 bean.getWeekDay(),bean.getRemindTime(),bean.getAdvanceDay(),bean.getColour(),bean.getOperationTime(),bean.getOperationType(),
-                bean.getLoop(),bean.getId()};
+                loop,bean.getId()};
         this._mdb.execSQL(deleteStr, value);
     }
     public void deleteTask(String id){

+ 1 - 1
app/src/main/java/cn/artimen/appring/k2/entity/TaskDateBean.java

@@ -18,7 +18,7 @@ public class TaskDateBean implements Serializable{
     int Colour;
     long OperationTime;
     int OperationType;
-    int loop;
+    int loop;//
 
     public String getId() {
         return Id;

+ 10 - 4
app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/AddNotifyActivity.java

@@ -34,25 +34,31 @@ public class AddNotifyActivity extends K2BaseActivity implements View.OnClickLis
             case R.id.btn_wake_up:
                 intent = new Intent(this,WakeUpOrSleepTaskActivity.class);
                 intent.putExtra("type",WAKE_UP_TYPE);
-                startActivity(intent);
+                startActivityForResult(intent,WAKE_UP_TYPE);
                 break;
             case R.id.btn_sleep:
                 intent = new Intent(this,WakeUpOrSleepTaskActivity.class);
                 intent.putExtra("type",SLEEP_TYPE);
-                startActivity(intent);
+                startActivityForResult(intent,SLEEP_TYPE);
                 break;
             case R.id.btn_birthday:
                 intent = new Intent(this,BirthdayActivity.class);
                 intent.putExtra("type",BIRTHDAY_TYPE);
-                startActivity(intent);
+                startActivityForResult(intent,BIRTHDAY_TYPE);
                 break;
             case R.id.btn_add:
                 intent = new Intent(this,CustomNotifyActivity.class);
                 intent.putExtra("type",CUSTOM_TYPE);
-                startActivity(intent);
+                startActivityForResult(intent,CUSTOM_TYPE);
                 break;
             default:
                 break;
         }
     }
+
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        setResult(resultCode);
+    }
 }

+ 110 - 19
app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/BirthdayActivity.java

@@ -1,13 +1,10 @@
 package cn.artimen.appring.k2.ui.dailyTask;
 
-import android.content.Context;
+import android.content.Intent;
 import android.os.Bundle;
-import android.app.Activity;
-import android.util.Log;
 import android.view.View;
-import android.view.ViewGroup;
+import android.widget.Button;
 import android.widget.TextView;
-import android.widget.TimePicker;
 
 import com.android.volley.Request;
 import com.android.volley.Response;
@@ -18,8 +15,6 @@ import org.json.JSONArray;
 import org.json.JSONException;
 import org.json.JSONObject;
 
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
 import java.util.Calendar;
 
 import cn.artimen.appring.R;
@@ -28,14 +23,16 @@ import cn.artimen.appring.component.log.Logger;
 import cn.artimen.appring.component.network.ARJSONListener;
 import cn.artimen.appring.component.network.BusinessError;
 import cn.artimen.appring.component.network.RequestManager;
+import cn.artimen.appring.constant.Constant;
 import cn.artimen.appring.constant.JSONConstants;
 import cn.artimen.appring.constant.UrlConstants;
+import cn.artimen.appring.k2.entity.TaskDateBean;
 import cn.artimen.appring.k2.ui.K2BaseActivity;
+import cn.artimen.appring.k2.utils.FormatUtils;
 import cn.artimen.appring.ui.custom.widget.spinnerwheel.AbstractWheel;
 import cn.artimen.appring.ui.custom.widget.spinnerwheel.OnWheelChangedListener;
 import cn.artimen.appring.ui.custom.widget.spinnerwheel.OnWheelScrollListener;
 import cn.artimen.appring.ui.custom.widget.spinnerwheel.WheelVerticalView;
-import cn.artimen.appring.ui.custom.widget.spinnerwheel.adapters.AbstractWheelTextAdapter;
 import cn.artimen.appring.ui.custom.widget.spinnerwheel.adapters.ArrayWheelAdapter;
 import cn.artimen.appring.ui.custom.widget.spinnerwheel.adapters.NumericWheelAdapter;
 import cn.artimen.appring.utils.ToastUtils;
@@ -55,8 +52,14 @@ public class BirthdayActivity extends K2BaseActivity {
     TextView mTvNotifyDay;
     TextView mTvTime;
     private String[] mDays;
+    String[] mMeridiem;
     int type;
     String defaultWeek = "{'1':'0','2':'0','3':'0','4':'0','5':'0','6':'0','7':'0'}";
+
+    int status = 0;
+    TaskDateBean task;
+
+    Button deleBtn;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -77,13 +80,15 @@ public class BirthdayActivity extends K2BaseActivity {
         mTvNotifyDay = (TextView) findViewById(R.id.tv_notify_day);
         mTvTime = (TextView) findViewById(R.id.tv_time);
 
+        deleBtn = (Button) findViewById(R.id.btn_dele);
+
         OnWheelChangedListener wheelListener = new OnWheelChangedListener() {
             public void onChanged(AbstractWheel wheel, int oldValue, int newValue) {
                 if (!mTimeScrolled) {
                     mTimeChanged = true;
                     mTvNotifyDay.setText(mDays[mDateWheel.getCurrentItem()]);
 
-                    mTvTime.setText(mMeridiemWheel.getCurrentItem() + " "+mHourWheel.getCurrentItem() +":"+ mMinuteWheel.getCurrentItem());
+                    mTvTime.setText(mMeridiem[mMeridiemWheel.getCurrentItem()] + " "+mHourWheel.getCurrentItem() +":"+ mMinuteWheel.getCurrentItem());
                     mTimeChanged = false;
                 }
             }
@@ -104,7 +109,7 @@ public class BirthdayActivity extends K2BaseActivity {
                 mTimeChanged = true;
                 mTvNotifyDay.setText(mDays[mDateWheel.getCurrentItem()]);
 
-                mTvTime.setText(mMeridiemWheel.getCurrentItem() + " "+mHourWheel.getCurrentItem() +":"+ mMinuteWheel.getCurrentItem());
+                mTvTime.setText(mMeridiem[mMeridiemWheel.getCurrentItem()] + " "+mHourWheel.getCurrentItem() +":"+ mMinuteWheel.getCurrentItem());
                 mTimeChanged = false;
             }
         };
@@ -119,40 +124,90 @@ public class BirthdayActivity extends K2BaseActivity {
                 saveTask();
             }
         });
+
+        deleBtn.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                deleteTask();
+            }
+        });
     }
 
+
     private void initData(){
-        type = getIntent().getIntExtra("type",3);
+
         mDays = getResources().getStringArray(R.array.birthday_notify_days);
-        String[] meridiem = getResources().getStringArray(R.array.meridiem);
+        mMeridiem = getResources().getStringArray(R.array.meridiem);
         mDateWheel.setViewAdapter(new ArrayWheelAdapter(this,mDays));
-        mMeridiemWheel.setViewAdapter(new ArrayWheelAdapter(this,meridiem));
+        mMeridiemWheel.setViewAdapter(new ArrayWheelAdapter(this, mMeridiem));
         mHourWheel.setViewAdapter(new NumericWheelAdapter(this, 0, 11));
         mMinuteWheel.setViewAdapter(new NumericWheelAdapter(this, 0, 59, "%02d"));
 
-        mDateWheel.setCurrentItem(1);
-        mTvNotifyDay.setText(mDays[1]);
+
+        Intent intent = getIntent();
+        status = intent.getIntExtra("status",0);
+        if(status==DailyTaskListActivity.EDIT_STATUS){
+            task = (TaskDateBean) intent.getSerializableExtra("dateTask");
+            type = task.getType();
+            deleBtn.setVisibility(View.VISIBLE);
+
+            mDateWheel.setCurrentItem(2-task.getAdvanceDay());
+            mTvNotifyDay.setText(mDays[2-task.getAdvanceDay()]);
+
+            String time  = task.getRemindTime();
+
+            int hour = FormatUtils.getHour(time, Constant.TIME_FORMAT);
+            int minute = FormatUtils.getMinute(time, Constant.TIME_FORMAT);
+            int meridiem = FormatUtils.getMeridiem(time,Constant.TIME_FORMAT);
+
+            mTvTime.setText(mMeridiem[meridiem] +hour+ ":"+minute);
+            mMeridiemWheel.setCurrentItem(meridiem);
+            mHourWheel.setCurrentItem(hour);
+            mMinuteWheel.setCurrentItem(minute);
+
+        }else {
+            type = getIntent().getIntExtra("type",AddNotifyActivity.BIRTHDAY_TYPE);
+            deleBtn.setVisibility(View.GONE);
+
+            mDateWheel.setCurrentItem(1);
+            mTvNotifyDay.setText(mDays[1]);
+
+            Calendar calendar = Calendar.getInstance();
+            mTvTime.setText(mMeridiem[mMeridiemWheel.getCurrentItem()] +calendar.get(Calendar.HOUR_OF_DAY)+ ":"+calendar.get(Calendar.MINUTE));
+            mMeridiemWheel.setCurrentItem(calendar.get(Calendar.AM_PM));
+            mHourWheel.setCurrentItem(calendar.get(Calendar.HOUR));
+            mMinuteWheel.setCurrentItem(calendar.get(Calendar.MINUTE));
+        }
+
+
+
+
 
         Calendar calendar = Calendar.getInstance();
-       mTvTime.setText(calendar.get(Calendar.HOUR_OF_DAY)+ ":"+calendar.get(Calendar.MINUTE));
+       mTvTime.setText(mMeridiem[mMeridiemWheel.getCurrentItem()] +calendar.get(Calendar.HOUR_OF_DAY)+ ":"+calendar.get(Calendar.MINUTE));
         mMeridiemWheel.setCurrentItem(calendar.get(Calendar.AM_PM));
         mHourWheel.setCurrentItem(calendar.get(Calendar.HOUR));
         mMinuteWheel.setCurrentItem(calendar.get(Calendar.MINUTE));
 
+
     }
 
     private void saveTask() {
         JSONObject params = new JSONObject();
+        String apiUrl = UrlConstants.ADD_REMIND_URL;
         try {
             params.put(JSONConstants.USER_ID, DataManager.getInstance().getLoginResponse().getUserId());
             params.put(JSONConstants.CHILD_ID,DataManager.getInstance().getCurrentChildInfo().getChildId());
-            params.put("remindContent","");
+            if(status==DailyTaskListActivity.EDIT_STATUS) {
+                params.put(JSONConstants.ID, task.getId());
+                apiUrl = UrlConstants.UPDATE_REMIND_URL;
+            }
+                params.put("remindContent","");
             params.put("type",type);
             params.put("remindDate","");
             params.put("weekDay",defaultWeek);
 
             int hour = mHourWheel.getCurrentItem()+mMeridiemWheel.getCurrentItem()*12;
-            Log.i("jzf",hour+"");
             int minute = mMinuteWheel.getCurrentItem();
             params.put("remindTime",hour+":"+minute);
             params.put("advanceDay",2-mDateWheel.getCurrentItem());
@@ -162,7 +217,7 @@ public class BirthdayActivity extends K2BaseActivity {
             e.printStackTrace();
         }
 
-        JsonObjectRequest request=new JsonObjectRequest(Request.Method.POST, UrlConstants.BaseURL + UrlConstants.ADD_REMIND_URL, params,
+        JsonObjectRequest request=new JsonObjectRequest(Request.Method.POST, UrlConstants.BaseURL +apiUrl, params,
                 new ARJSONListener()
                 {
                     @Override
@@ -172,6 +227,42 @@ public class BirthdayActivity extends K2BaseActivity {
                             ToastUtils.showShortToast(error.getMessage());
                         } else {
                             ToastUtils.showShortToast(R.string.add_task_success);
+                            setResult(type);
+                            finish();
+                        }
+                    }
+                }, new Response.ErrorListener() {
+            @Override
+            public void onErrorResponse(VolleyError error) {
+                ToastUtils.showShortToast(R.string.network_exception);
+            }
+        });
+        //showProgressDialog();
+        RequestManager.getInstance().addToRequestQueue(request);
+    }
+
+    private void deleteTask() {
+        JSONObject params = new JSONObject();
+        try {
+            params.put(JSONConstants.USER_ID, DataManager.getInstance().getLoginResponse().getUserId());
+            params.put(JSONConstants.CHILD_ID,DataManager.getInstance().getCurrentChildInfo().getChildId());
+            params.put(JSONConstants.ID,task.getId());
+            params.put(JSONConstants.SESSION_KEY, DataManager.getInstance().getLoginResponse().getSessionKey());
+        } catch (JSONException e) {
+            e.printStackTrace();
+        }
+
+        JsonObjectRequest request=new JsonObjectRequest(Request.Method.POST, UrlConstants.BaseURL + UrlConstants.DELETE_REMIND_URL, params,
+                new ARJSONListener()
+                {
+                    @Override
+                    protected void onResponse(BusinessError error, JSONObject response, JSONArray array) {
+                        Logger.d(TAG, "response:" + response);
+                        if (null != error) {
+                            ToastUtils.showShortToast(error.getMessage());
+                        } else {
+                            ToastUtils.showShortToast(R.string.delete_task_success);
+                            setResult(type);
                             finish();
                         }
                     }

+ 165 - 19
app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/CustomNotifyActivity.java

@@ -1,18 +1,19 @@
 package cn.artimen.appring.k2.ui.dailyTask;
 
-import android.annotation.SuppressLint;
 import android.app.AlertDialog;
 import android.content.DialogInterface;
 import android.content.Intent;
 import android.os.Bundle;
-import android.app.Activity;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.Button;
+import android.widget.CheckBox;
+import android.widget.CompoundButton;
 import android.widget.DatePicker;
 import android.widget.EditText;
 import android.widget.LinearLayout;
+import android.widget.RadioButton;
 import android.widget.TextView;
 import android.widget.TimePicker;
 
@@ -28,7 +29,7 @@ import org.json.JSONObject;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
-import java.util.Locale;
+import java.util.HashMap;
 
 import cn.artimen.appring.R;
 import cn.artimen.appring.app.DataManager;
@@ -39,13 +40,12 @@ import cn.artimen.appring.component.network.RequestManager;
 import cn.artimen.appring.constant.Constant;
 import cn.artimen.appring.constant.JSONConstants;
 import cn.artimen.appring.constant.UrlConstants;
-import cn.artimen.appring.k2.database.DailyTaskDatabaseManager;
 import cn.artimen.appring.k2.entity.TaskDateBean;
 import cn.artimen.appring.k2.ui.K2BaseActivity;
 import cn.artimen.appring.k2.utils.FormatUtils;
 import cn.artimen.appring.utils.ToastUtils;
 
-public class CustomNotifyActivity extends K2BaseActivity implements View.OnClickListener {
+public class CustomNotifyActivity extends K2BaseActivity implements View.OnClickListener ,CompoundButton.OnCheckedChangeListener{
     public static final String TAG = CustomNotifyActivity.class.getSimpleName();
     EditText mTitleEdit;
     LinearLayout mDatePickerLyt;
@@ -59,36 +59,100 @@ public class CustomNotifyActivity extends K2BaseActivity implements View.OnClick
 
     Calendar mCalendar;
     int type;
-    String defaultWeek = "{'1':'0','2':'0','3':'0','4':'0','5':'0','6':'0','7':'0'}";
     Button deleBtn;
     int status = 0;
     TaskDateBean task;
+
+    int mColor;
+
+    CheckBox mCvMon;
+    CheckBox mCvTue;
+    CheckBox mCvWen;
+    CheckBox mCvThur;
+    CheckBox mCvFri;
+    CheckBox mCvSat;
+    CheckBox mCvSun;
+
+    RadioButton mRadioRed;
+    RadioButton mRadioYellow;
+    RadioButton mRadioGreen;
+    RadioButton mRadioBlue;
+    RadioButton mRadioPurple;
+
+    String mRemindTime ="";
+
+    private HashMap<Integer,CheckBox> mBoxMap =new HashMap<>();
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_custom_notify);
         initView();
+
+        initData();
+
+    }
+
+    private void initData() {
+
         Intent intent = getIntent();
         status = intent.getIntExtra("status",0);
         if(status==DailyTaskListActivity.EDIT_STATUS){
             task = (TaskDateBean) intent.getSerializableExtra("dateTask");
             type = task.getType();
             deleBtn.setVisibility(View.VISIBLE);
+
+            // set  time
+            mCalendar = FormatUtils.getCalendar(task.getRemindDate()+" "+task.getRemindTime(),Constant.HOUR_24_FORMAT);
+            DateFormat format = new SimpleDateFormat(Constant.CUSTOM_TIME_FORMAT);
+            mTime.setText(format.format(mCalendar.getTime()));
+            mRemindTime = task.getRemindTime();
+            mTitleEdit.setText(task.getRemindContent());
+
+            JSONObject weekobj = null;
+            try {
+                weekobj = new JSONObject(task.getWeekDay());
+                for(int i=1;i<8;i++){
+                    if("1".equals(weekobj.getString(""+i))){
+                        mBoxMap.get(i).setChecked(true);
+                        break;
+                    }
+                }
+            } catch (JSONException e) {
+                e.printStackTrace();
+            }
+            switch (task.getColour()){
+                case 0:
+                    break;
+                case 1:
+                    mRadioRed.setChecked(true);
+                    break;
+                case 2:
+                    mRadioYellow.setChecked(true);
+                    break;
+                case 3:
+                    mRadioGreen.setChecked(true);
+                    break;
+                case 4:
+                    mRadioBlue.setChecked(true);
+                    break;
+                case 5:
+                    mRadioPurple.setChecked(true);
+                    break;
+                default:
+                    break;
+            }
         }else {
-            type = getIntent().getIntExtra("type",AddNotifyActivity.WAKE_UP_TYPE);
+            type = getIntent().getIntExtra("type",AddNotifyActivity.CUSTOM_TYPE);
+            // set current time
+            mCalendar =Calendar.getInstance();
+            DateFormat format = new SimpleDateFormat(Constant.CUSTOM_TIME_FORMAT);
+            mTime.setText(format.format(mCalendar.getTime()));
             deleBtn.setVisibility(View.GONE);
         }
-        int userId = DataManager.getInstance().getLoginResponse().getUserId();
-        int childId = DataManager.getInstance().getCurrentChildInfo().getChildId();
-        initData();
+        mMeridiemStrs = getResources().getStringArray(R.array.meridiem);
+
 
-    }
 
-    private void initData() {
-        type = getIntent().getIntExtra("type",0);
-        mMeridiemStrs = getResources().getStringArray(R.array.meridiem);
-        // set current time
-        mCalendar = Calendar.getInstance();
     }
 
     private void initView(){
@@ -108,6 +172,35 @@ public class CustomNotifyActivity extends K2BaseActivity implements View.OnClick
                 deleteTask();
             }
         });
+        mRadioRed = (RadioButton) findViewById(R.id.radio_red);
+        mRadioYellow = (RadioButton) findViewById(R.id.radio_yellow);
+        mRadioGreen = (RadioButton) findViewById(R.id.radio_green);
+        mRadioBlue = (RadioButton) findViewById(R.id.radio_blue);
+        mRadioPurple = (RadioButton) findViewById(R.id.radio_purple);
+
+        mRadioRed.setOnCheckedChangeListener(this);
+        mRadioYellow.setOnCheckedChangeListener(this);
+        mRadioGreen.setOnCheckedChangeListener(this);
+        mRadioBlue.setOnCheckedChangeListener(this);
+        mRadioPurple.setOnCheckedChangeListener(this);
+
+
+
+        mCvMon = (CheckBox) findViewById(R.id.cv_mon);
+        mCvTue = (CheckBox) findViewById(R.id.cv_tue);
+        mCvWen = (CheckBox) findViewById(R.id.cv_wen);
+        mCvThur = (CheckBox) findViewById(R.id.cv_thur);
+        mCvFri = (CheckBox) findViewById(R.id.cv_frid);
+        mCvSat = (CheckBox) findViewById(R.id.cv_sat);
+        mCvSun = (CheckBox) findViewById(R.id.cv_sun);
+
+        mBoxMap.put(1,mCvMon);
+        mBoxMap.put(2,mCvTue);
+        mBoxMap.put(3,mCvWen);
+        mBoxMap.put(4,mCvThur);
+        mBoxMap.put(5,mCvFri);
+        mBoxMap.put(6,mCvSat);
+        mBoxMap.put(7,mCvSun);
     }
 
     @Override
@@ -149,6 +242,7 @@ public class CustomNotifyActivity extends K2BaseActivity implements View.OnClick
                             ToastUtils.showShortToast(error.getMessage());
                         } else {
                             ToastUtils.showShortToast(R.string.delete_task_success);
+                            setResult(type);
                             finish();
                         }
                     }
@@ -205,11 +299,16 @@ public class CustomNotifyActivity extends K2BaseActivity implements View.OnClick
             DateFormat format = new SimpleDateFormat(Constant.DATE_FORMAT);
 
             params.put("remindDate",format.format(mCalendar.getTime()));
-            params.put("weekDay",defaultWeek);
+            params.put("weekDay",getWeek());
 
-            params.put("remindTime",mHour+":"+mMinute);
+            if(mMinute>10){
+                mRemindTime =mHour+":"+mMinute;
+            }else {
+                mRemindTime=mHour+":0"+mMinute;
+            }
+            params.put("remindTime",mRemindTime);
             params.put("advanceDay",0);
-            params.put("colour",0);
+            params.put("colour",mColor);
             params.put(JSONConstants.SESSION_KEY, DataManager.getInstance().getLoginResponse().getSessionKey());
         } catch (JSONException e) {
             e.printStackTrace();
@@ -229,6 +328,7 @@ public class CustomNotifyActivity extends K2BaseActivity implements View.OnClick
                             }else {
                                 ToastUtils.showShortToast(R.string.add_task_success);
                             }
+                            setResult(type);
                             finish();
                         }
                     }
@@ -242,5 +342,51 @@ public class CustomNotifyActivity extends K2BaseActivity implements View.OnClick
         RequestManager.getInstance().addToRequestQueue(request);
     }
 
+    private String getWeek(){
+        StringBuilder builder = new StringBuilder();
+        builder.append("{");
+        for(int i=1;i<8;i++){
+            builder.append("'");
+            builder.append(i);
+            builder.append("':");
+            CheckBox box = mBoxMap.get(i);
+
+            builder.append(box.isChecked()?"'1'":"'0'");
+            if(i!=7){
+                builder.append(",");
+            }
 
+
+        }
+        builder.append("}");
+
+        return builder.toString();
+    }
+
+    @Override
+    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+        if(isChecked){
+            switch (buttonView.getId()){
+                case R.id.radio_red:
+                    mColor = 1;
+                    Log.i("jzf","cli");
+                    break;
+                case R.id.radio_yellow:
+                    mColor = 2;
+                    break;
+                case R.id.radio_green:
+                    mColor = 3;
+                    break;
+                case R.id.radio_blue:
+                    mColor = 4;
+                    break;
+                case R.id.radio_purple:
+                    mColor = 5;
+                    break;
+                default:
+                    break;
+            }
+        }
+
+    }
 }

+ 67 - 7
app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/DailyTaskListActivity.java

@@ -3,10 +3,8 @@ package cn.artimen.appring.k2.ui.dailyTask;
 import android.content.Intent;
 import android.os.AsyncTask;
 import android.os.Bundle;
-import android.app.Activity;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
-import android.util.Log;
 import android.view.View;
 import android.widget.AdapterView;
 import android.widget.Button;
@@ -37,11 +35,9 @@ import cn.artimen.appring.constant.UrlConstants;
 import cn.artimen.appring.k2.adapter.DailyTaskDateAdapter;
 import cn.artimen.appring.k2.adapter.DailyTaskEventAdapter;
 import cn.artimen.appring.k2.database.DailyTaskDatabaseManager;
-import cn.artimen.appring.k2.entity.CallChargeBean;
 import cn.artimen.appring.k2.entity.TaskDateBean;
 import cn.artimen.appring.k2.ui.K2BaseActivity;
 import cn.artimen.appring.k2.utils.FormatUtils;
-import cn.artimen.appring.ui.avtivity.base.BaseActivity;
 import cn.artimen.appring.utils.SharedPreferenceUtil;
 import cn.artimen.appring.utils.ToastUtils;
 
@@ -59,6 +55,10 @@ public class DailyTaskListActivity extends K2BaseActivity implements DailyTaskDa
     HashMap<String,List<TaskDateBean>> mDateTaskMap;
     ArrayList<TaskDateBean> mDateList;
 
+    Button mBtnToday;
+
+    int mCurrentDayPosition;
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -69,6 +69,7 @@ public class DailyTaskListActivity extends K2BaseActivity implements DailyTaskDa
 
     private void initData() {
         mDateTaskMap = new HashMap<>();
+        mCurrentDayPosition = getTodayPosition();
         int userId = DataManager.getInstance().getLoginResponse().getUserId();
         int childId = DataManager.getInstance().getCurrentChildInfo().getChildId();
         mDailyTaskDatabaseManager=new DailyTaskDatabaseManager(this,userId,childId);
@@ -143,12 +144,14 @@ public class DailyTaskListActivity extends K2BaseActivity implements DailyTaskDa
                         return;
 
                 }
-                startActivity(intent);
+                startActivityForResult(intent,type);
             }
         });
 
         mBtnMonth = (Button) findViewById(R.id.btn_month);
         mBtnMonth.setOnClickListener(this);
+        mBtnToday = (Button) findViewById(R.id.btn_today);
+        mBtnToday.setOnClickListener(this);
     }
 
     private void fetchDateDataList() {
@@ -246,9 +249,10 @@ public class DailyTaskListActivity extends K2BaseActivity implements DailyTaskDa
     }
 
     @Override
-    public void onItemClick(View view, int postion) {
+    public void onItemClick( int postion) {
         mDateAdapter.setSelectItem(postion);
         mDateAdapter.notifyItemRangeChanged(0,14);
+        mCurrentDayPosition = postion;
         refreshList((ArrayList<TaskDateBean>) mDateTaskMap.get(FormatUtils.get2Weeks(Constant.DATE_FORMAT)[postion]));
     }
 
@@ -256,19 +260,75 @@ public class DailyTaskListActivity extends K2BaseActivity implements DailyTaskDa
     public void onClick(View v) {
         switch (v.getId()){
             case R.id.btn_month:
-                startActivity(new Intent(DailyTaskListActivity.this,DailyTaskMonthActivity.class));
+                Intent intent = new Intent(DailyTaskListActivity.this,DailyTaskMonthActivity.class);
+                intent.putExtra("position",mCurrentDayPosition);
+                startActivityForResult(intent,DailyTaskMonthActivity.WEEK_CALENDAR);
                 break;
             case R.id.rightActionImageView:
                 startActivity(new Intent(DailyTaskListActivity.this,AddNotifyActivity.class));
                 break;
+            case R.id.btn_today:
+                int position = getTodayPosition();
+                onItemClick(position);
+                mLytDate.scrollToPosition(position);
+                break;
             default:
                 break;
         }
     }
 
+    private int getTodayPosition(){
+        String[] dates = FormatUtils.get2Weeks(Constant.DATE_FORMAT);
+        String today = FormatUtils.getCurrentDate(Constant.DATE_FORMAT);
+        for(int i=0;i<14;i++){
+            if(today.equals(dates[i]))
+                return i;
+        }
+        return 0;
+    }
     void refreshList(ArrayList<TaskDateBean> list){
         mDateList.clear();
         mDateList.addAll(list);
         mTaskAdapter.notifyDataSetChanged();
     }
+
+    void refreshUi(){
+        int curChildId = DataManager.getInstance().getCurrentChildInfo().getChildId();
+        String timekey = String.format("%s%d", "DATE_TASK_LAST_TIME_", curChildId);
+
+        lastOperationTime = SharedPreferenceUtil.getLongValueFromSP(TAG, timekey);
+        fetchDateDataList();
+    }
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        switch (resultCode){
+            case AddNotifyActivity.WAKE_UP_TYPE:
+                refreshUi();
+                break;
+            case AddNotifyActivity.SLEEP_TYPE:
+                refreshUi();
+                break;
+            case AddNotifyActivity.BIRTHDAY_TYPE:
+                refreshUi();
+                break;
+            case AddNotifyActivity.CUSTOM_TYPE:
+                refreshUi();
+                break;
+
+            case DailyTaskMonthActivity.WEEK_CALENDAR:
+                if(data!=null){
+                    int position = data.getIntExtra("position",-1);
+                    if(position!=-1){
+                        onItemClick(position);
+                        mLytDate.scrollToPosition(position);
+                    }
+                }
+
+                break;
+            default:
+                return;
+
+        }
+    }
 }

+ 73 - 5
app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/DailyTaskMonthActivity.java

@@ -1,30 +1,98 @@
 package cn.artimen.appring.k2.ui.dailyTask;
 
+import android.content.Intent;
 import android.os.Bundle;
-import android.app.Activity;
+import android.util.Log;
 import android.view.View;
+import android.widget.Button;
+
+import java.util.Calendar;
 
 import cn.artimen.appring.R;
+import cn.artimen.appring.constant.Constant;
 import cn.artimen.appring.k2.ui.K2BaseActivity;
 import cn.artimen.appring.k2.utils.FormatUtils;
-import cn.artimen.appring.ui.avtivity.base.BaseActivity;
+import cn.artimen.appring.ui.custom.calendar.materialdesign.CalendarDay;
+import cn.artimen.appring.ui.custom.calendar.materialdesign.MaterialCalendarView;
+import cn.artimen.appring.ui.custom.calendar.materialdesign.OnDateChangedListener;
+
+public class DailyTaskMonthActivity extends K2BaseActivity implements View.OnClickListener,OnDateChangedListener {
+
+    Button mTodayBtn;
+    Button mWeekBtn;
 
-public class DailyTaskMonthActivity extends K2BaseActivity implements View.OnClickListener{
+    public static final int WEEK_CALENDAR = 4;
+    MaterialCalendarView mCalendarView;
+    String[] mdays;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_daily_task_month);
         initView();
+        initData();
     }
+
+    private void initData() {
+        mdays =  FormatUtils.get2Weeks(Constant.DATE_FORMAT);
+        int position = getIntent().getIntExtra("position",-1);
+        Log.i("jzf",position+"ff");
+        if(position!=-1){
+            mCalendarView.setSelectedDate(FormatUtils.getCalendar(mdays[position],Constant.DATE_FORMAT));
+        }else {
+            mCalendarView.setSelectedDate(Calendar.getInstance());
+        }
+
+    }
+
     private void initView(){
         setActionBarTitleForMiddleTv(FormatUtils.getCurrentMonth());
-        setImageResourceForRightActionImageView(R.drawable.add_device);
+        setImageResourceForRightActionImageView(R.drawable.k2_app_rightmenu_add);
         rightActionImageView.setOnClickListener(this);
+        mTodayBtn = (Button) findViewById(R.id.btn_today);
+        mWeekBtn = (Button) findViewById(R.id.btn_week);
+        mTodayBtn.setOnClickListener(this);
+        mWeekBtn.setOnClickListener(this);
+
+        mCalendarView = (MaterialCalendarView) findViewById(R.id.calendarView);
+        mCalendarView.setOnDateChangedListener(this);
     }
 
     @Override
     public void onClick(View v) {
-        
+        switch (v.getId()){
+            case R.id.rightActionImageView:
+                startActivity(new Intent(DailyTaskMonthActivity.this,AddNotifyActivity.class));
+                break;
+            case R.id.btn_today:
+                mCalendarView.setSelectedDate(Calendar.getInstance());
+                break;
+            case R.id.btn_week:
+                finish();
+                break;
+            default:
+                break;
+        }
+    }
+
+    @Override
+    public void onDateChanged(MaterialCalendarView widget, CalendarDay date) {
+
+        Intent intent = new Intent();
+        intent.putExtra("position",findDatePosition(date));
+        setResult(WEEK_CALENDAR,intent);
+
+
+    }
+
+    int findDatePosition(CalendarDay date){
+
+        String day = FormatUtils.getDate(date.getCalendar(),Constant.DATE_FORMAT);
+        for(int i =0; i<mdays.length;i++){
+            if(day.equals(mdays[i])){
+                return i;
+            }
+        }
+        return -1;
     }
 }

+ 150 - 16
app/src/main/java/cn/artimen/appring/k2/ui/dailyTask/WakeUpOrSleepTaskActivity.java

@@ -2,8 +2,12 @@ package cn.artimen.appring.k2.ui.dailyTask;
 
 import android.content.Intent;
 import android.os.Bundle;
+import android.util.Log;
 import android.view.View;
 import android.widget.Button;
+import android.widget.CheckBox;
+import android.widget.CompoundButton;
+import android.widget.DatePicker;
 import android.widget.TimePicker;
 
 import com.android.volley.Request;
@@ -15,56 +19,104 @@ import org.json.JSONArray;
 import org.json.JSONException;
 import org.json.JSONObject;
 
+import java.util.Calendar;
+import java.util.Date;
+import java.util.HashMap;
+
 import cn.artimen.appring.R;
 import cn.artimen.appring.app.DataManager;
 import cn.artimen.appring.component.log.Logger;
 import cn.artimen.appring.component.network.ARJSONListener;
 import cn.artimen.appring.component.network.BusinessError;
 import cn.artimen.appring.component.network.RequestManager;
+import cn.artimen.appring.constant.Constant;
 import cn.artimen.appring.constant.JSONConstants;
 import cn.artimen.appring.constant.UrlConstants;
-import cn.artimen.appring.k2.database.DailyTaskDatabaseManager;
 import cn.artimen.appring.k2.entity.TaskDateBean;
 import cn.artimen.appring.k2.ui.K2BaseActivity;
+import cn.artimen.appring.k2.utils.FormatUtils;
 import cn.artimen.appring.utils.ToastUtils;
 
-public class WakeUpOrSleepTaskActivity extends K2BaseActivity {
+public class WakeUpOrSleepTaskActivity extends K2BaseActivity implements CompoundButton.OnCheckedChangeListener{
     private static final String TAG = WakeUpOrSleepTaskActivity.class.getSimpleName();
     private TimePicker mTimePicker;
+    private DatePicker mDatePicker;
     Button deleBtn;
     int type;
     int status = 0;
     TaskDateBean task;
-    String defaultWeek = "{'1':'0','2':'0','3':'0','4':'0','5':'0','6':'0','7':'0'}";
+    String mRemindDate = "";
+
+    CheckBox mCvMon;
+    CheckBox mCvTue;
+    CheckBox mCvWen;
+    CheckBox mCvThur;
+    CheckBox mCvFri;
+    CheckBox mCvSat;
+    CheckBox mCvSun;
+
+    private HashMap<Integer,CheckBox> mBoxMap =new HashMap<>();
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_wake_up_task);
         initView();
+        initData();
+
+
+    }
+
+    private void initData() {
         Intent intent = getIntent();
         status = intent.getIntExtra("status",0);
         if(status==DailyTaskListActivity.EDIT_STATUS){
             task = (TaskDateBean) intent.getSerializableExtra("dateTask");
             type = task.getType();
             deleBtn.setVisibility(View.VISIBLE);
+
+            //加载task 初始化ui
+            if(task.getLoop()==1){
+                mDatePicker.setVisibility(View.GONE);
+            }else {
+                mDatePicker.setVisibility(View.VISIBLE);
+                Calendar calendar = FormatUtils.getCalendar(task.getRemindDate(),Constant.DATE_FORMAT);
+                mDatePicker.updateDate(calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH));
+            }
+
+
+            mTimePicker.setCurrentHour(FormatUtils.getHour(task.getRemindTime(),Constant.TIME_FORMAT));
+            mTimePicker.setCurrentMinute(FormatUtils.getMinute(task.getRemindTime(),Constant.TIME_FORMAT));
+            JSONObject weekobj = null;
+            try {
+                weekobj = new JSONObject(task.getWeekDay());
+                for(int i=1;i<8;i++){
+                    if("1".equals(weekobj.getString(""+i))){
+                        mBoxMap.get(i).setChecked(true);
+                        break;
+                    }
+                }
+            } catch (JSONException e) {
+                e.printStackTrace();
+            }
+
+
         }else {
             type = getIntent().getIntExtra("type",AddNotifyActivity.WAKE_UP_TYPE);
             deleBtn.setVisibility(View.GONE);
         }
-        int userId = DataManager.getInstance().getLoginResponse().getUserId();
-        int childId = DataManager.getInstance().getCurrentChildInfo().getChildId();
-
-    }
-
-    private void initView(){
-
         if(type==AddNotifyActivity.WAKE_UP_TYPE){
             setActionBarTitleForMiddleTv(getString(R.string.notify_wake_up));
         }else {
             setActionBarTitleForMiddleTv(getString(R.string.notify_sleep));
         }
+
+
+    }
+
+    private void initView(){
         rightActionTv.setText(getString(R.string.save));
         mTimePicker = (TimePicker) findViewById(R.id.time_picker);
+        mDatePicker = (DatePicker) findViewById(R.id.date_picker);
         rightActionTv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
@@ -78,6 +130,30 @@ public class WakeUpOrSleepTaskActivity extends K2BaseActivity {
                 deleteTask();
             }
         });
+        mCvMon = (CheckBox) findViewById(R.id.cv_mon);
+        mCvTue = (CheckBox) findViewById(R.id.cv_tue);
+        mCvWen = (CheckBox) findViewById(R.id.cv_wen);
+        mCvThur = (CheckBox) findViewById(R.id.cv_thur);
+        mCvFri = (CheckBox) findViewById(R.id.cv_frid);
+        mCvSat = (CheckBox) findViewById(R.id.cv_sat);
+        mCvSun = (CheckBox) findViewById(R.id.cv_sun);
+
+        mBoxMap.put(1,mCvMon);
+        mBoxMap.put(2,mCvTue);
+        mBoxMap.put(3,mCvWen);
+        mBoxMap.put(4,mCvThur);
+        mBoxMap.put(5,mCvFri);
+        mBoxMap.put(6,mCvSat);
+        mBoxMap.put(7,mCvSun);
+
+        mCvMon.setOnCheckedChangeListener(this);
+        mCvTue.setOnCheckedChangeListener(this);
+        mCvWen.setOnCheckedChangeListener(this);
+        mCvThur.setOnCheckedChangeListener(this);
+        mCvFri.setOnCheckedChangeListener(this);
+        mCvSat.setOnCheckedChangeListener(this);
+        mCvSun.setOnCheckedChangeListener(this);
+
     }
 
     private void deleteTask() {
@@ -99,34 +175,55 @@ public class WakeUpOrSleepTaskActivity extends K2BaseActivity {
                         Logger.d(TAG, "response:" + response);
                         if (null != error) {
                             ToastUtils.showShortToast(error.getMessage());
+                            hideProgressDialog();
                         } else {
                             ToastUtils.showShortToast(R.string.delete_task_success);
+                            hideProgressDialog();
+                            setResult(type);
                             finish();
                         }
                     }
                 }, new Response.ErrorListener() {
             @Override
             public void onErrorResponse(VolleyError error) {
+                hideProgressDialog();
                 ToastUtils.showShortToast(R.string.network_exception);
             }
         });
-        //showProgressDialog();
+        showProgressDialog();
         RequestManager.getInstance().addToRequestQueue(request);
     }
 
     private void saveTask() {
+        if(!mCvMon.isChecked()&&!mCvTue.isChecked()&&!mCvWen.isChecked()
+                &&!mCvThur.isChecked()&&!mCvFri.isChecked()&&!mCvSat.isChecked()&&!mCvSun.isChecked()){
+            mRemindDate =FormatUtils.getDateFromCalendarView( mDatePicker.getCalendarView().getDate(),Constant.DATE_FORMAT);
+        }else {
+            mRemindDate="";
+        }
         JSONObject params = new JSONObject();
+        String apiUrl = UrlConstants.ADD_REMIND_URL;
         try {
             params.put(JSONConstants.USER_ID, DataManager.getInstance().getLoginResponse().getUserId());
             params.put(JSONConstants.CHILD_ID,DataManager.getInstance().getCurrentChildInfo().getChildId());
+            if(status==DailyTaskListActivity.EDIT_STATUS){
+                params.put(JSONConstants.ID,task.getId());
+                apiUrl=UrlConstants.UPDATE_REMIND_URL;
+            }
             params.put("remindContent","");
             params.put("type",type);
-            params.put("remindDate","");
-            params.put("weekDay",defaultWeek);
+            params.put("remindDate",mRemindDate);
+            params.put("weekDay",getWeek());
 
             int hour = mTimePicker.getCurrentHour();
             int minute = mTimePicker.getCurrentMinute();
-            params.put("remindTime",hour+":"+minute);
+            String mRemindTime ="";
+            if(minute>10){
+                mRemindTime =hour+":"+minute;
+            }else {
+                mRemindTime=hour+":0"+minute;
+            }
+            params.put("remindTime",mRemindTime);
             params.put("advanceDay",0);
             params.put("colour",0);
             params.put(JSONConstants.SESSION_KEY, DataManager.getInstance().getLoginResponse().getSessionKey());
@@ -134,27 +231,64 @@ public class WakeUpOrSleepTaskActivity extends K2BaseActivity {
             e.printStackTrace();
         }
 
-        JsonObjectRequest request=new JsonObjectRequest(Request.Method.POST, UrlConstants.BaseURL + UrlConstants.ADD_REMIND_URL, params,
+        JsonObjectRequest request=new JsonObjectRequest(Request.Method.POST, UrlConstants.BaseURL + apiUrl, params,
                 new ARJSONListener()
                 {
                     @Override
                     protected void onResponse(BusinessError error, JSONObject response, JSONArray array) {
                         Logger.d(TAG, "response:" + response);
                         if (null != error) {
+                            hideProgressDialog();
                             ToastUtils.showShortToast(error.getMessage());
                         } else {
                             ToastUtils.showShortToast(R.string.add_task_success);
+                            hideProgressDialog();
+                            setResult(type);
                             finish();
                         }
                     }
                 }, new Response.ErrorListener() {
             @Override
             public void onErrorResponse(VolleyError error) {
+                hideProgressDialog();
                 ToastUtils.showShortToast(R.string.network_exception);
             }
         });
-        //showProgressDialog();
+        showProgressDialog();
         RequestManager.getInstance().addToRequestQueue(request);
     }
 
+    private String getWeek(){
+        StringBuilder builder = new StringBuilder();
+        builder.append("{");
+        for(int i=1;i<8;i++){
+            builder.append("'");
+            builder.append(i);
+            builder.append("':");
+            CheckBox box = mBoxMap.get(i);
+
+            builder.append(box.isChecked()?"'1'":"'0'");
+            if(i!=7){
+                builder.append(",");
+            }
+
+
+        }
+        builder.append("}");
+
+        return builder.toString();
+    }
+
+    @Override
+    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+        if(isChecked){
+            mDatePicker.setVisibility(View.GONE);
+
+        }else {
+            if(!mCvMon.isChecked()&&!mCvTue.isChecked()&&!mCvWen.isChecked()
+                    &&!mCvThur.isChecked()&&!mCvFri.isChecked()&&!mCvSat.isChecked()&&!mCvSun.isChecked()){
+                mDatePicker.setVisibility(View.VISIBLE);
+            }
+        }
+    }
 }

+ 1 - 0
app/src/main/java/cn/artimen/appring/k2/ui/main/LeftMenuFragment.java

@@ -88,6 +88,7 @@ public class LeftMenuFragment extends Fragment implements ICurrentChildObserver
         }
     };
 
+
     private void initView(View rootView)
     {
         ListView leftListView=(ListView)rootView.findViewById(R.id.leftListView);

+ 8 - 0
app/src/main/java/cn/artimen/appring/k2/ui/main/RightMenuFragment.java

@@ -20,6 +20,7 @@ import java.util.List;
 
 import cn.artimen.appring.R;
 import cn.artimen.appring.app.DataManager;
+import cn.artimen.appring.component.VersionMatch.VersionMatch;
 import cn.artimen.appring.component.designpattern.observerpattern.datamanager.ICurrentChildObserver;
 import cn.artimen.appring.data.bean.ChildTrackInfo;
 import cn.artimen.appring.k2.adapter.RightMenuk2Adapter;
@@ -139,6 +140,13 @@ public class RightMenuFragment extends Fragment implements ICurrentChildObserver
         }
         rightMenuIcons.recycle();
 
+        if(!VersionMatch.isK2()){
+            RightMenuItem item=new RightMenuItem();
+            item.setmText(ResUtils.getString(R.string.title_activity_ble_anti_lost));
+            item.setmIconId(R.drawable.k2_app_rightmenu_bluetooth);
+            rightMenuItems.add(item);
+        }
+
         if(hasDebugFlag)
         {
             RightMenuItem item=new RightMenuItem();

+ 52 - 2
app/src/main/java/cn/artimen/appring/k2/utils/FormatUtils.java

@@ -33,6 +33,33 @@ public class FormatUtils {
         return dateStr;
     }
 
+    public static String getDate(Calendar calendar,String format){
+        SimpleDateFormat sdf=new SimpleDateFormat(format);
+        String dateStr=sdf.format(calendar.getTime());
+
+        return dateStr;
+    }
+
+    public static Calendar getCalendar(String specifiedDay,String format){
+        SimpleDateFormat sdf=new SimpleDateFormat(format);
+
+        Date date = null;
+        try {
+            date = sdf.parse(specifiedDay);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        Calendar calendar =Calendar.getInstance();
+        calendar.setTime(date);
+        return calendar;
+    }
+    public static String getDateFromCalendarView(long time,String format){
+        SimpleDateFormat sdf=new SimpleDateFormat(format);
+        Date date = new Date(time);
+        String dateStr=sdf.format(date);
+
+        return dateStr;
+    }
     public static String[] get2Weeks(String format){
 
         String[] dates = new String[14];
@@ -156,7 +183,7 @@ public class FormatUtils {
 
     }
 
-    public static String getHour(String specifiedDay, String format){
+    public static int getHour(String specifiedDay, String format){
         Calendar c = Calendar.getInstance();
         Date date = null;
         try {
@@ -165,9 +192,32 @@ public class FormatUtils {
             e.printStackTrace();
         }
         c.setTime(date);
-        return   c.get(Calendar.HOUR_OF_DAY)+"";
+        return   c.get(Calendar.HOUR_OF_DAY);
     }
 
+    public static int getMinute(String specifiedDay, String format){
+        Calendar c = Calendar.getInstance();
+        Date date = null;
+        try {
+            date = new SimpleDateFormat(format).parse(specifiedDay);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        c.setTime(date);
+        return   c.get(Calendar.MINUTE);
+    }
+
+    public static int getMeridiem(String specifiedDay, String format){
+        Calendar c = Calendar.getInstance();
+        Date date = null;
+        try {
+            date = new SimpleDateFormat(format).parse(specifiedDay);
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        c.setTime(date);
+        return   c.get(Calendar.AM_PM);
+    }
     public static String getChineseDay(String specifiedDay, String format){
         Calendar c = Calendar.getInstance();
         Date date = null;

+ 46 - 6
app/src/main/java/cn/artimen/appring/ui/avtivity/main/MainActivity.java

@@ -33,11 +33,19 @@ import android.widget.AdapterView;
 import android.widget.ImageView;
 import android.widget.ProgressBar;
 import android.widget.TextView;
+import android.widget.Toast;
 
 import com.android.volley.Request;
 import com.android.volley.Response;
 import com.android.volley.VolleyError;
 import com.android.volley.toolbox.JsonObjectRequest;
+import com.baidu.mapapi.model.LatLng;
+import com.baidu.mapapi.search.core.SearchResult;
+import com.baidu.mapapi.search.geocode.GeoCodeResult;
+import com.baidu.mapapi.search.geocode.GeoCoder;
+import com.baidu.mapapi.search.geocode.OnGetGeoCoderResultListener;
+import com.baidu.mapapi.search.geocode.ReverseGeoCodeOption;
+import com.baidu.mapapi.search.geocode.ReverseGeoCodeResult;
 import com.umeng.analytics.MobclickAgent;
 
 import org.json.JSONArray;
@@ -106,7 +114,8 @@ import cn.jpush.android.api.JPushInterface;
 public class MainActivity extends ActionBarActivity implements View.OnClickListener,
         //OnChildSelectedListener,
         IShowSessionExceptionDialog,OnAlertDialogListener,
-        ICurrentChildObserver,IAvatarObserver, CustomJPushReceiver.OnReceivedNewVoiceListener
+        ICurrentChildObserver,IAvatarObserver, CustomJPushReceiver.OnReceivedNewVoiceListener,
+        OnGetGeoCoderResultListener
  {
     public static final String TAG=MainActivity.class.getSimpleName();
 
@@ -160,8 +169,9 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
     //private CustomMapContainerView mCustomMapContainerView;
     //private AllenMapContainerView mCustomMapContainerView;
     private CustomMenuMapContainerView mCustomMenuMapContainerView;
+     GeoCoder mSearch = null;
 
-    private View mAvatarLayout;
+     private View mAvatarLayout;
     private ImageView mChildAvatarImageView;
     private TextView mChildNickNameTv;
     //private ChildInfoListPopWindow mChildInfoListPopWindow;
@@ -204,6 +214,9 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
 
      private VersionUpdate meVersionCheck;
 
+     private String mAdress;
+     private TextView mTvAdress;
+
      private WeakReferenceHandler<Activity> mHandler=new WeakReferenceHandler<Activity>(this){
         @Override
         protected void handleMessage(Activity activity, Message msg) {
@@ -255,8 +268,23 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
         }
     };
 
+     @Override
+     public void onGetGeoCodeResult(GeoCodeResult geoCodeResult) {
+
+     }
+
+     @Override
+     public void onGetReverseGeoCodeResult(ReverseGeoCodeResult reverseGeoCodeResult) {
+         if (reverseGeoCodeResult == null || reverseGeoCodeResult.error != SearchResult.ERRORNO.NO_ERROR) {
 
-    private class IncomingHandler extends Handler{
+             return;
+         }
+         mAdress = reverseGeoCodeResult.getAddress();
+         Logger.i(TAG,"add=="+mAdress);
+     }
+
+
+     private class IncomingHandler extends Handler{
         @Override
         public void handleMessage(Message msg)
         {
@@ -449,6 +477,8 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
         mUnreadVoiceNum.setVisibility(View.INVISIBLE);
         //setUnreadVoiceNum();
 
+        mTvAdress = (TextView) findViewById(R.id.tv_location);
+
         devServerPromptTextView = (TextView)findViewById(R.id.devServerPromptTV);
         devServerPromptTextView.setVisibility(UrlConstants.getServerMode() == 1 ? View.VISIBLE : View.GONE);
 
@@ -717,7 +747,9 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
 
      @Override
     protected void onCreate(Bundle savedInstanceState) {
-         Logger.d(TAG,"onCreate");
+         if (savedInstanceState != null) {
+             savedInstanceState.putParcelable("android:support:fragments",null);
+         }
         super.onCreate(savedInstanceState);
         DataStorageHelper.getInstance().recoverDataIfNecessary(savedInstanceState);
         setContentView(R.layout.activity_main);
@@ -726,6 +758,9 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
         DataManager.getInstance().registerCurrentChildObserver(this);
         DataManager.getInstance().registerAvatarObserver(this);
 
+         // 初始化搜索模块,注册事件监听
+         mSearch = GeoCoder.newInstance();
+         mSearch.setOnGetGeoCodeResultListener(this);
          //设置声音类型
          setVolumeControlStream(AudioManager.STREAM_MUSIC);
 
@@ -875,7 +910,7 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
         DataManager.getInstance().removeAvatarObserver(this);
         mCustomMenuMapContainerView.onDestroy();
         RingApplication.getInstance().removeActivity(this);
-
+        mSearch.destroy();
         super.onDestroy();
 
     }
@@ -1482,7 +1517,10 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
      {
          if(info == null)
              return;
-
+         LatLng ptCenter = new LatLng(info.getLat(), info.getLng());
+         // 反Geo搜索
+         mSearch.reverseGeoCode(new ReverseGeoCodeOption()
+                 .location(ptCenter));
          if(info.getChildId()==mLocatingChildId)
          {
              if (m_iRealPositionLocationType == 1 || m_iRealPositionLocationType == 2)
@@ -1498,12 +1536,14 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe
              if(info.getTimeInterval() <= 0)
              {
                  mLastRefreshTimeTv.setText(ResUtils.getString(R.string.no_location_time));
+                 mTvAdress.setText(ResUtils.getString(R.string.no_location_time));
              }
              else
              {
                  mLastRefreshTimeTv.setText(ResUtils.getString(R.string.last_refresh_detail,
                              MainHelper.getLastRefreshTime(info.getTimeInterval()), info.getAccuracy(),
                              MainHelper.getLocaTypeStr(info.getLocaType(), info.isWatchDebugFlag())));
+                 mTvAdress.setText(mAdress);
              }
          }
      }

+ 6 - 0
app/src/main/res/color/text_color_week.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:color="@color/white" android:state_checked= "true"/>
+    <item android:color="@color/base_blue" android:state_checked="false"/>
+    <item android:color="@color/base_blue"/>
+</selector>

+ 6 - 0
app/src/main/res/drawable/bg_blue.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/k2_app_rightmenu_blue_selected" android:state_checked="true"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_blue_normal" android:state_checked="false"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_blue_normal"/>
+</selector>

+ 6 - 0
app/src/main/res/drawable/bg_green.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/k2_app_rightmenu_green_selected" android:state_checked="true"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_green_normal" android:state_checked="false"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_green_normal"/>
+</selector>

+ 6 - 0
app/src/main/res/drawable/bg_purple.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/k2_app_rightmenu_purple_selected" android:state_checked="true"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_purple_normal" android:state_checked="false"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_purple_normal"/>
+</selector>

+ 6 - 0
app/src/main/res/drawable/bg_red.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/k2_app_rightmenu_red_selected" android:state_checked="true"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_red_normal" android:state_checked="false"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_red_normal"/>
+</selector>

+ 2 - 2
app/src/main/res/drawable/bg_week_checked.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="ring">
-    <solid android:color="#ffa200"/>
+    android:shape="oval">
+    <solid android:color="@color/base_blue"/>
 </shape>

+ 5 - 2
app/src/main/res/drawable/bg_week_normal.xml

@@ -1,5 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
-    android:shape="ring">
-    <solid android:color="#00000000"/>
+    android:shape="oval">
+    <solid android:color="@color/white"/>
+    <stroke
+        android:width="1px"
+        android:color="@color/base_blue"/>
 </shape>

+ 6 - 0
app/src/main/res/drawable/bg_yellow.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+    <item android:drawable="@drawable/k2_app_rightmenu_yellow_selected" android:state_checked="true"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_yellow_normal" android:state_checked="false"/>
+    <item android:drawable="@drawable/k2_app_rightmenu_yellow_normal"/>
+</selector>

+ 64 - 16
app/src/main/res/layout/activity_add_notify.xml

@@ -7,44 +7,92 @@
     tools:context="cn.artimen.appring.k2.ui.dailyTask.AddNotifyActivity">
     <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-        <ImageView
+        android:layout_height="wrap_content"
+        android:padding="@dimen/space_value_large">
+        <LinearLayout
             android:id="@+id/btn_wake_up"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:src="@drawable/add_device"
-            android:layout_weight="1"/>
-        <ImageView
+            android:layout_weight="1"
+            android:gravity="center"
+            android:orientation="vertical">
+            <ImageView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:src="@drawable/k2_app_rightmenu_clock_hignlight"/>
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/space_value_medium"
+                android:text="@string/wake_up"/>
+        </LinearLayout>
+        <LinearLayout
             android:id="@+id/btn_sleep"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:src="@drawable/add_device"
-            android:layout_weight="1"/>
-        <ImageView
+            android:layout_weight="1"
+            android:gravity="center"
+            android:orientation="vertical">
+            <ImageView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:src="@drawable/k2_app_rightmenu_sleep_hignlight"/>
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/space_value_medium"
+                android:text="@string/sleep"/>
+        </LinearLayout>
+        <LinearLayout
             android:id="@+id/btn_birthday"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:src="@drawable/add_device"
-            android:layout_weight="1"/>
+            android:layout_weight="1"
+            android:gravity="center"
+            android:orientation="vertical">
+            <ImageView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:src="@drawable/k2_app_rightmenu_birthday_hignlight"/>
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/space_value_medium"
+                android:text="@string/birthday"/>
+        </LinearLayout>
+
     </LinearLayout>
 
     <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
-        <ImageView
+        android:layout_height="wrap_content"
+        android:padding="@dimen/space_value_large">
+        <LinearLayout
             android:id="@+id/btn_add"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:src="@drawable/add_device"
-            android:layout_weight="1"/>
-        <ImageView
+            android:layout_weight="1"
+            android:gravity="center"
+            android:orientation="vertical">
+            <ImageView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:src="@drawable/k2_app_rightmenu_custom_hignlight"/>
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/space_value_medium"
+                android:text="@string/custom"/>
+        </LinearLayout>
+        <View
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_weight="1"/>
-        <ImageView
+        <View
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_weight="1"/>
     </LinearLayout>
 
+
 </LinearLayout>

+ 18 - 1
app/src/main/res/layout/activity_birthday.xml

@@ -6,8 +6,12 @@
     tools:context="cn.artimen.appring.k2.ui.dailyTask.BirthdayActivity">
 
     <LinearLayout
+        android:id="@+id/lyt_show"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
+        android:padding="@dimen/space_value_medium"
+        android:layout_centerHorizontal="true"
+        android:layout_marginTop="@dimen/space_value_huge"
         android:gravity="center_vertical">
         <ImageView
             android:layout_width="wrap_content"
@@ -18,24 +22,27 @@
             android:id="@+id/tv_notify_day"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:layout_marginLeft="@dimen/space_value_medium"
             android:text="提前一天"/>
 
         <TextView
             android:id="@+id/tv_time"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:layout_marginLeft="@dimen/space_value_medium"
             android:text="上午10:00"/>
 
         <TextView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:layout_marginLeft="@dimen/space_value_medium"
             android:text="提醒"/>
     </LinearLayout>
 
     <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:layout_alignParentBottom="true">
+        android:layout_below="@+id/lyt_show">
         <cn.artimen.appring.ui.custom.widget.spinnerwheel.WheelVerticalView
             android:id="@+id/date_wheel"
             android:layout_width="0dp"
@@ -59,5 +66,15 @@
 
     </LinearLayout>
 
+    <Button
+        android:id="@+id/btn_dele"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignParentBottom="true"
+        android:layout_marginLeft="30dp"
+        android:layout_marginRight="30dp"
+        android:layout_marginBottom="30dp"
+        android:background="@drawable/bg_delete"
+        android:text="@string/btn_delt_task"/>
 
 </RelativeLayout>

+ 110 - 17
app/src/main/res/layout/activity_custom_notify.xml

@@ -10,20 +10,28 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:maxLength="10"
+        android:layout_marginTop="30dp"
+        android:background="@color/white"
+        android:padding="@dimen/space_value_large"
         android:hint="@string/notify_title_hint"/>
 
     <LinearLayout
         android:id="@+id/lyt_time"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:padding="@dimen/space_value_large"
+        android:background="@color/white"
         android:layout_below="@+id/edit_title">
         <ImageView
             android:layout_width="wrap_content"
-            android:layout_height="wrap_content" />
+            android:layout_height="wrap_content"
+            android:src="@drawable/k2_app_rightmenu_time"/>
         <TextView
             android:id="@+id/tv_time"
             android:layout_width="wrap_content"
-            android:layout_height="wrap_content" />
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginLeft="@dimen/space_value_large"/>
 
     </LinearLayout>
 
@@ -31,60 +39,141 @@
         android:id="@+id/lyt_color"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_marginTop="30dp"
+        android:padding="@dimen/space_value_large"
+        android:background="@color/white"
         android:layout_below="@+id/lyt_time">
         <TextView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:text="事件颜色"/>
+            android:layout_gravity="center"
+            android:text="@string/events_color"/>
+
+        <RadioGroup
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="horizontal">
+            <RadioButton
+                android:id="@+id/radio_red"
+                android:layout_width="30dp"
+                android:layout_height="30dp"
+                android:button="@null"
+                android:layout_marginLeft="@dimen/space_value_large"
+                android:background="@drawable/bg_red"/>
+            <RadioButton
+                android:id="@+id/radio_yellow"
+                android:layout_width="30dp"
+                android:layout_height="30dp"
+                android:button="@null"
+                android:layout_marginLeft="@dimen/space_value_large"
+                android:background="@drawable/bg_yellow"/>
+            <RadioButton
+                android:id="@+id/radio_green"
+                android:layout_width="30dp"
+                android:layout_height="30dp"
+                android:button="@null"
+                android:layout_marginLeft="@dimen/space_value_large"
+                android:background="@drawable/bg_green"/>
+            <RadioButton
+                android:id="@+id/radio_blue"
+                android:layout_width="30dp"
+                android:layout_height="30dp"
+                android:button="@null"
+                android:layout_marginLeft="@dimen/space_value_large"
+                android:background="@drawable/bg_blue"/>
+            <RadioButton
+                android:id="@+id/radio_purple"
+                android:layout_width="30dp"
+                android:layout_height="30dp"
+                android:button="@null"
+                android:layout_marginLeft="@dimen/space_value_large"
+                android:background="@drawable/bg_purple"/>
+        </RadioGroup>
 
     </LinearLayout>
 
     <LinearLayout
         android:layout_below="@+id/lyt_color"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
+        android:layout_height="wrap_content"
+        android:background="@color/white"
+        android:padding="@dimen/space_value_large"
+        android:layout_marginTop="30dp">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:text="@string/repeate"/>
         <CheckBox
+            android:id="@+id/cv_mon"
             android:layout_width="40dp"
             android:layout_height="40dp"
             android:gravity="center"
-            android:text="周一"
+            android:text="@string/monday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_tue"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周二"
+            android:gravity="center"
+            android:text="@string/tuesday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_wen"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周三"
+            android:gravity="center"
+            android:text="@string/wensday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_thur"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周四"
+            android:gravity="center"
+            android:text="@string/thursday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_frid"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周五"
+            android:gravity="center"
+            android:text="@string/friday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_sat"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周六"
+            android:gravity="center"
+            android:text="@string/saturday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_sun"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周日"
+            android:gravity="center"
+            android:text="@string/sunday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
 
     </LinearLayout>
@@ -94,5 +183,9 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
+        android:layout_marginLeft="30dp"
+        android:layout_marginRight="30dp"
+        android:layout_marginBottom="30dp"
+        android:background="@drawable/bg_delete"
         android:text="@string/btn_delt_task"/>
 </RelativeLayout>

+ 9 - 8
app/src/main/res/layout/activity_daily_task_list.xml

@@ -10,23 +10,24 @@
         android:layout_height="100dp"
         android:scrollbars="none"/>
 
-    <View
-        android:layout_width="match_parent"
-        android:layout_height="1px"
-        android:background="@color/gray"/>
-
     <ListView
         android:id="@+id/task_list"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:dividerHeight="1px"
-        android:divider="@color/gray"
+        android:divider="@color/transparent_background"
         android:layout_below="@+id/day_list"
         android:layout_above="@+id/lyt_button"/>
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="2px"
+        android:layout_below="@+id/day_list"
+        android:background="@color/transparent_background"/>
     <RelativeLayout
         android:id="@+id/lyt_button"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:background="@drawable/bg_btn"
         android:layout_alignParentBottom="true">
         <Button
             android:id="@+id/btn_today"
@@ -35,7 +36,7 @@
             android:background="@color/transparent"
             android:layout_alignParentLeft="true"
             android:textColor="@color/base_blue"
-            android:text="今天"/>
+            android:text="@string/time_today"/>
         <Button
             android:id="@+id/btn_month"
             android:layout_width="wrap_content"
@@ -43,7 +44,7 @@
             android:background="@color/transparent"
             android:layout_alignParentRight="true"
             android:textColor="@color/base_blue"
-            android:text="周日历"/>
+            android:text="@string/month_calendar"/>
     </RelativeLayout>
 
 </RelativeLayout>

+ 15 - 5
app/src/main/res/layout/activity_daily_task_month.xml

@@ -4,25 +4,35 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     tools:context="cn.artimen.appring.k2.ui.dailyTask.DailyTaskMonthActivity">
-    <com.wt.calendarcard.CalendarCardPager
-        android:id="@+id/calendarCard"
+
+    <cn.artimen.appring.ui.custom.calendar.materialdesign.MaterialCalendarView
+        android:id="@+id/calendarView"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content" />
+        android:layout_height="wrap_content"/>
+
 
     <RelativeLayout
+        android:id="@+id/lyt_button"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:background="@drawable/bg_btn"
         android:layout_alignParentBottom="true">
         <Button
+            android:id="@+id/btn_today"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:background="@color/transparent"
             android:layout_alignParentLeft="true"
-            android:text="今天"/>
+            android:textColor="@color/base_blue"
+            android:text="@string/time_today"/>
         <Button
+            android:id="@+id/btn_week"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
+            android:background="@color/transparent"
             android:layout_alignParentRight="true"
-            android:text="周日历"/>
+            android:textColor="@color/base_blue"
+            android:text="@string/week_calendar"/>
     </RelativeLayout>
 
 </RelativeLayout>

+ 58 - 13
app/src/main/res/layout/activity_wake_up_task.xml

@@ -4,57 +4,98 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     tools:context=".k2.ui.dailyTask.WakeUpOrSleepTaskActivity">
+    <DatePicker
+        android:id="@+id/date_picker"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_centerHorizontal="true"
+        android:calendarViewShown="false"/>
     <TimePicker
         android:id="@+id/time_picker"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
+        android:layout_below="@id/date_picker"
         android:timePickerMode="spinner"/>
     <LinearLayout
         android:layout_below="@+id/time_picker"
         android:layout_width="match_parent"
         android:layout_height="wrap_content">
+
+        <TextView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:text="@string/repeate"/>
         <CheckBox
+            android:id="@+id/cv_mon"
             android:layout_width="40dp"
             android:layout_height="40dp"
             android:gravity="center"
-            android:text="周一"
+            android:text="@string/monday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_tue"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周二"
+            android:gravity="center"
+            android:text="@string/tuesday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_wen"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周三"
+            android:gravity="center"
+            android:text="@string/wensday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_thur"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周四"
+            android:gravity="center"
+            android:text="@string/thursday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_frid"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周五"
+            android:gravity="center"
+            android:text="@string/friday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_sat"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周六"
+            android:gravity="center"
+            android:text="@string/saturday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
-        <CheckedTextView
+        <CheckBox
+            android:id="@+id/cv_sun"
             android:layout_width="40dp"
             android:layout_height="40dp"
-            android:text="周日"
+            android:gravity="center"
+            android:text="@string/sunday"
             android:button="@null"
+            android:layout_marginLeft="@dimen/space_value_medium"
+            android:textColor="@color/text_color_week"
             android:background="@drawable/bg_week"/>
 
     </LinearLayout>
@@ -64,5 +105,9 @@
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
+        android:layout_marginLeft="30dp"
+        android:layout_marginRight="30dp"
+        android:layout_marginBottom="30dp"
+        android:background="@drawable/bg_delete"
         android:text="@string/btn_delt_task"/>
 </RelativeLayout>

+ 6 - 0
app/src/main/res/layout/activity_watch_settings.xml

@@ -15,6 +15,7 @@
             android:orientation="vertical">
             <RelativeLayout
                 android:id="@+id/lyt_class_forbiden"
+                android:background="@color/white"
                 android:layout_width="match_parent"
                 android:layout_height="70dp">
 
@@ -51,6 +52,7 @@
                 android:background="@color/black"/>
             <RelativeLayout
                 android:layout_width="match_parent"
+                android:background="@color/white"
                 android:layout_height="70dp">
 
                 <TextView
@@ -78,6 +80,7 @@
                 android:background="@color/black"/>
             <RelativeLayout
                 android:layout_width="match_parent"
+                android:visibility="gone"
                 android:layout_height="70dp">
 
                 <TextView
@@ -102,15 +105,18 @@
             <View
                 android:layout_width="match_parent"
                 android:layout_height="1px"
+                android:visibility="gone"
                 android:background="@color/black"/>
             <TextView
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:gravity="center"
+                android:visibility="gone"
                 android:text="@string/friend_velidate_desc"/>
             <View
                 android:layout_width="match_parent"
                 android:layout_height="1px"
+                android:layout_marginTop="30dp"
                 android:background="@color/black"/>
 
             <RelativeLayout

+ 5 - 4
app/src/main/res/layout/view_dailytask_date.xml

@@ -15,12 +15,12 @@
     <View
         android:layout_width="match_parent"
         android:layout_height="1px"
-        android:background="@color/gray"/>
+        android:background="@color/transparent_background"/>
 
     <LinearLayout
         android:id="@+id/lyt_date"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
+        android:layout_width="60dp"
+        android:layout_height="60dp"
         android:orientation="vertical"
         android:gravity="center"
 
@@ -29,7 +29,7 @@
             android:id="@+id/tv_date"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textSize="@dimen/text_size_medium"
+            android:textSize="@dimen/text_size_large"
             android:text="11"/>
 
         <TextView
@@ -37,6 +37,7 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:textSize="@dimen/text_size_small"
+            android:textColor="@color/gray"
             android:text="初一"/>
     </LinearLayout>
 

+ 15 - 1
app/src/main/res/layout/view_dailytask_task.xml

@@ -9,6 +9,7 @@
         android:layout_height="wrap_content"
         android:layout_weight="1"
         android:padding="@dimen/space_value_medium"
+        android:layout_marginLeft="@dimen/space_value_large"
         android:gravity="center">
         <TextView
             android:id="@+id/tv_meridiem"
@@ -29,7 +30,20 @@
         android:id="@+id/tv_event"
         android:layout_width="0dp"
         android:layout_height="wrap_content"
-        android:layout_weight="7"
+        android:layout_weight="5"
+        android:gravity="center"
+        android:padding="@dimen/space_value_medium"
         android:textSize="@dimen/text_size_small"/>
+    <LinearLayout
+        android:layout_width="0dp"
+        android:layout_height="wrap_content"
+        android:gravity="center"
+        android:layout_marginRight="@dimen/space_value_large"
+        android:layout_weight="1">
+        <ImageView
+            android:id="@+id/iv_color"
+            android:layout_width="30dp"
+            android:layout_height="30dp"/>
+    </LinearLayout>
 
 </LinearLayout>

+ 16 - 2
app/src/main/res/values-zh-rCN/strings.xml

@@ -97,7 +97,6 @@
         <item>@string/step_calculation</item>
         <item>@string/flower_list</item>
         <item>@string/events_reminder</item>
-        <item>@string/title_activity_ble_anti_lost</item>
     </string-array>
 
     <string name="account_manager">账户管理</string>
@@ -759,8 +758,9 @@
 
     <!--right menue-->
     <string name="step_calculation">健康计步</string>
-    <string name="flower_list">红花</string>
+    <string name="flower_list">红花任务</string>
     <string name="events_reminder">事件提醒</string>
+    <string name="events_color">事件提醒</string>
     <string name="share">分享</string>
     <string name="step_unit">步</string>
     <string name="beyond_children">已超越%s的小朋友</string>
@@ -830,5 +830,19 @@
     <string name="save_to_gallery"> 保存到本地</string>
     <string name="no_location_tip"> 暂无位置信息</string>
     <string name="location_detial_tip"> 详细定位信息</string>
+    <string name="wake_up">起床</string>
+    <string name="sleep">睡觉</string>
+    <string name="custom">自定义</string>
+    <string name="week_calendar">周日历</string>
+    <string name="month_calendar">月日历</string>
+    <string name="repeate">重复</string>
+    <string name="monday">周一</string>
+    <string name="tuesday">周二</string>
+    <string name="wensday">周三</string>
+    <string name="thursday">周四</string>
+    <string name="friday">周五</string>
+    <string name="saturday">周六</string>
+    <string name="sunday">周日</string>
+
 </resources>
 

+ 9 - 1
app/src/main/res/values/draws.xml

@@ -34,7 +34,6 @@
         <item>@drawable/k2_app_rightmenu_step_counter</item>
         <item>@drawable/k2_app_rightmenu_flower</item>
         <item>@drawable/k2_app_rightmenu_remind</item>
-        <item>@drawable/k2_app_rightmenu_bluetooth</item>
     </array>
 
     <array name="relation_icons">
@@ -60,4 +59,13 @@
         <item>@drawable/k2_app_rightmenu_sina_weibo</item>
         <item>@drawable/k2_app_rightmenu_save_image</item>
     </array>
+
+    <array name="color_images">
+        <item></item>
+        <item>@drawable/k2_app_rightmenu_red_normal</item>
+        <item>@drawable/k2_app_rightmenu_yellow_normal</item>
+        <item>@drawable/k2_app_rightmenu_green_normal</item>
+        <item>@drawable/k2_app_rightmenu_blue_normal</item>
+        <item>@drawable/k2_app_rightmenu_purple_normal</item>
+    </array>
 </resources>

+ 0 - 1
app/src/main/res/values/strings.xml

@@ -77,7 +77,6 @@
         <item>@string/step_calculation</item>
         <item>@string/flower_list</item>
         <item>@string/events_reminder</item>
-        <item>@string/title_activity_ble_anti_lost</item>
     </string-array>
 
     <string name="account_manager">Account Manager</string>

+ 0 - 22
calendarcard/build.gradle

@@ -1,22 +0,0 @@
-apply plugin: 'com.android.library'
-
-android {
-    compileSdkVersion 21
-    buildToolsVersion "23.0.3"
-
-    defaultConfig {
-        minSdkVersion 10
-        targetSdkVersion 21
-    }
-
-    buildTypes {
-        release {
-            minifyEnabled false
-            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
-        }
-    }
-}
-
-dependencies {
-    compile 'com.android.support:support-v4:21.0.3'
-}

+ 0 - 11
calendarcard/src/main/AndroidManifest.xml

@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="com.wt.calendar_card"
-    android:versionCode="1"
-    android:versionName="1.0" >
-
-    <uses-sdk
-        android:minSdkVersion="10"
-        android:targetSdkVersion="21" />
-
-</manifest>

+ 0 - 241
calendarcard/src/main/java/com/wt/calendarcard/CalendarCard.java

@@ -1,241 +0,0 @@
-package com.wt.calendarcard;
-
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Locale;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.LinearLayout;
-import android.widget.RelativeLayout;
-import android.widget.TextView;
-
-import com.wt.calendar_card.R;
-
-public class CalendarCard extends RelativeLayout {
-	
-	private TextView cardTitle;
-	private int itemLayout = R.layout.card_item_simple;
-	private OnItemRender mOnItemRender;
-	private OnItemRender mOnItemRenderDefault;
-	private OnCellItemClick mOnCellItemClick;
-	private Calendar dateDisplay;
-	private ArrayList<CheckableLayout> cells = new ArrayList<CheckableLayout>();
-	private LinearLayout cardGrid;
-
-	public CalendarCard(Context context, AttributeSet attrs, int defStyle) {
-		super(context, attrs, defStyle);
-		init(context);
-	}
-	
-	public CalendarCard(Context context, AttributeSet attrs) {
-		super(context, attrs);
-		init(context);
-	}
-	
-	public CalendarCard(Context context) {
-		super(context);
-		init(context);
-	}
-	
-	private void init(Context ctx) {
-		if (isInEditMode()) return;
-		View layout = LayoutInflater.from(ctx).inflate(R.layout.card_view, null, false);
-		
-		if (dateDisplay == null)
-			dateDisplay = Calendar.getInstance();
-		
-		cardTitle = (TextView)layout.findViewById(R.id.cardTitle);
-		cardGrid = (LinearLayout)layout.findViewById(R.id.cardGrid);
-		
-		cardTitle.setText(new SimpleDateFormat("MMM yyyy", Locale.getDefault()).format(dateDisplay.getTime()));
-		
-		Calendar cal = Calendar.getInstance();
-		cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
-		((TextView)layout.findViewById(R.id.cardDay1)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		cal.add(Calendar.DAY_OF_WEEK, 1);
-		((TextView)layout.findViewById(R.id.cardDay2)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		cal.add(Calendar.DAY_OF_WEEK, 1);
-		((TextView)layout.findViewById(R.id.cardDay3)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		cal.add(Calendar.DAY_OF_WEEK, 1);
-		((TextView)layout.findViewById(R.id.cardDay4)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		cal.add(Calendar.DAY_OF_WEEK, 1);
-		((TextView)layout.findViewById(R.id.cardDay5)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		cal.add(Calendar.DAY_OF_WEEK, 1);
-		((TextView)layout.findViewById(R.id.cardDay6)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		cal.add(Calendar.DAY_OF_WEEK, 1);
-		((TextView)layout.findViewById(R.id.cardDay7)).setText(cal.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.SHORT, Locale.getDefault()));
-		
-		LayoutInflater la = LayoutInflater.from(ctx);
-		for(int y=0; y<cardGrid.getChildCount(); y++) {
-			LinearLayout row = (LinearLayout)cardGrid.getChildAt(y);
-			for(int x=0; x<row.getChildCount(); x++) {
-				CheckableLayout cell = (CheckableLayout)row.getChildAt(x);
-				cell.setOnClickListener(new View.OnClickListener() {
-					@Override
-					public void onClick(View v) {
-						for(CheckableLayout c : cells)
-							c.setChecked(false);
-						((CheckableLayout)v).setChecked(true);
-						
-						if (getOnCellItemClick()!= null)
-							getOnCellItemClick().onCellClick(v, (CardGridItem)v.getTag()); // TODO create item
-					}
-				});
-				
-				View cellContent = la.inflate(itemLayout, cell, false);
-				cell.addView(cellContent);
-				cells.add(cell);
-			}
-		}
-		
-		addView(layout);
-		
-		mOnItemRenderDefault = new OnItemRender() {
-			@Override
-			public void onRender(CheckableLayout v, CardGridItem item) {
-				((TextView)v.getChildAt(0)).setText(item.getDayOfMonth().toString());
-			}
-		};
-		
-		updateCells();
-	}
-	
-	private int getDaySpacing(int dayOfWeek) {
-		if (Calendar.SUNDAY == dayOfWeek)
-			return 6;
-		else
-			return dayOfWeek - 2;
-	}
-	
-	private int getDaySpacingEnd(int dayOfWeek) {
-		return 8 - dayOfWeek;
-	}
-	
-	private void updateCells() {
-		Calendar cal;
-		Integer counter = 0;
-		if (dateDisplay != null) 
-			cal = (Calendar)dateDisplay.clone();
-		else
-			cal = Calendar.getInstance();
-		
-		cal.set(Calendar.DAY_OF_MONTH, 1);
-		
-		int daySpacing = getDaySpacing(cal.get(Calendar.DAY_OF_WEEK));
-		
-		// INFO : wrong calculations of first line - fixed
-		if (daySpacing > 0) {
-			Calendar prevMonth = (Calendar)cal.clone();
-			prevMonth.add(Calendar.MONTH, -1);
-			prevMonth.set(Calendar.DAY_OF_MONTH, prevMonth.getActualMaximum(Calendar.DAY_OF_MONTH) - daySpacing + 1);
-			for(int i=0; i<daySpacing; i++) {
-				CheckableLayout cell = cells.get(counter);
-				cell.setTag(new CardGridItem(Integer.valueOf(prevMonth.get(Calendar.DAY_OF_MONTH))).setEnabled(false));
-				cell.setEnabled(false);
-				(mOnItemRender == null ? mOnItemRenderDefault : mOnItemRender).onRender(cell, (CardGridItem)cell.getTag());
-				counter++;
-				prevMonth.add(Calendar.DAY_OF_MONTH, 1);
-			}
-		}
-		
-		int firstDay = cal.get(Calendar.DAY_OF_MONTH);
-		cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
-		int lastDay = cal.get(Calendar.DAY_OF_MONTH)+1;
-		for(int i=firstDay; i<lastDay; i++) {
-			cal.set(Calendar.DAY_OF_MONTH, i-1);
-			Calendar date = (Calendar)cal.clone();
-			date.add(Calendar.DAY_OF_MONTH, 1);
-			CheckableLayout cell = cells.get(counter);
-			cell.setTag(new CardGridItem(i).setEnabled(true).setDate(date));
-			cell.setEnabled(true);
-			cell.setVisibility(View.VISIBLE);
-			(mOnItemRender == null ? mOnItemRenderDefault : mOnItemRender).onRender(cell, (CardGridItem)cell.getTag());
-			counter++;
-		}
-		
-		if (dateDisplay != null) 
-			cal = (Calendar)dateDisplay.clone();
-		else
-			cal = Calendar.getInstance();
-		
-		cal.set(Calendar.DAY_OF_MONTH, cal.getActualMaximum(Calendar.DAY_OF_MONTH));
-		
-		daySpacing = getDaySpacingEnd(cal.get(Calendar.DAY_OF_WEEK));
-
-		if (daySpacing > 0) {
-			for(int i=0; i<daySpacing; i++) {
-				CheckableLayout cell = cells.get(counter);
-				cell.setTag(new CardGridItem(i+1).setEnabled(false)); // .setDate((Calendar)cal.clone())
-				cell.setEnabled(false);
-				cell.setVisibility(View.VISIBLE);
-				(mOnItemRender == null ? mOnItemRenderDefault : mOnItemRender).onRender(cell, (CardGridItem)cell.getTag());
-				counter++;
-			}
-		}
-		
-		if (counter < cells.size()) {
-			for(int i=counter; i<cells.size(); i++) {
-				cells.get(i).setVisibility(View.GONE);
-			}
-		}
-	}
-	
-	@Override
-	protected void onLayout(boolean changed, int l, int t, int r, int b) {
-		super.onLayout(changed, l, t, r, b);
-		if (changed && cells.size() > 0) {
-			int size = (r - l) / 7;
-			for(CheckableLayout cell : cells) {
-				cell.getLayoutParams().height = size;
-			}
-		}
-	}
-
-	public int getItemLayout() {
-		return itemLayout;
-	}
-
-	public void setItemLayout(int itemLayout) {
-		this.itemLayout = itemLayout;
-		//mCardGridAdapter.setItemLayout(itemLayout);
-	}
-
-	public OnItemRender getOnItemRender() {
-		return mOnItemRender;
-	}
-
-	public void setOnItemRender(OnItemRender mOnItemRender) {
-		this.mOnItemRender = mOnItemRender;
-		//mCardGridAdapter.setOnItemRender(mOnItemRender);
-	}
-
-	public Calendar getDateDisplay() {
-		return dateDisplay;
-	}
-
-	public void setDateDisplay(Calendar dateDisplay) {
-		this.dateDisplay = dateDisplay;
-		cardTitle.setText(new SimpleDateFormat("MMM yyyy", Locale.getDefault()).format(dateDisplay.getTime()));
-	}
-
-	public OnCellItemClick getOnCellItemClick() {
-		return mOnCellItemClick;
-	}
-
-	public void setOnCellItemClick(OnCellItemClick mOnCellItemClick) {
-		this.mOnCellItemClick = mOnCellItemClick;
-	}
-	
-	/**
-	 * call after change any input data - to refresh view
-	 */
-	public void notifyChanges() {
-		//mCardGridAdapter.init();
-		updateCells();
-	}
-
-}

+ 0 - 54
calendarcard/src/main/java/com/wt/calendarcard/CalendarCardPager.java

@@ -1,54 +0,0 @@
-package com.wt.calendarcard;
-
-import android.content.Context;
-import android.support.v4.view.ViewPager;
-import android.util.AttributeSet;
-import android.view.View;
-
-public class CalendarCardPager extends ViewPager {
-	
-	private CardPagerAdapter mCardPagerAdapter;
-	private OnCellItemClick mOnCellItemClick;
-	
-	public CalendarCardPager(Context context, AttributeSet attrs, int defStyle) {
-		super(context, attrs);
-		init(context);
-	}
-
-	public CalendarCardPager(Context context, AttributeSet attrs) {
-		super(context, attrs);
-		init(context);
-	}
-	
-	public CalendarCardPager(Context context) {
-		super(context);
-		init(context);
-	}
-	
-	private void init(Context context) {
-		 mCardPagerAdapter = new CardPagerAdapter(context);
-		 setAdapter(mCardPagerAdapter);
-	}
-	
-	public CardPagerAdapter getCardPagerAdapter() {
-		return mCardPagerAdapter;
-	}
-
-	public OnCellItemClick getOnCellItemClick() {
-		return mOnCellItemClick;
-	}
-
-	public void setOnCellItemClick(OnCellItemClick mOnCellItemClick) {
-		this.mOnCellItemClick = mOnCellItemClick;
-		mCardPagerAdapter.setDefaultOnCellItemClick(this.mOnCellItemClick);
-		if (getChildCount() > 0) {
-			for(int i=0; i<getChildCount(); i++) {
-				View v = getChildAt(i);
-				if (v instanceof CalendarCard) {
-					((CalendarCard) v).setOnCellItemClick(this.mOnCellItemClick);
-				}
-			}
-		}
-	}
-
-}

+ 0 - 52
calendarcard/src/main/java/com/wt/calendarcard/CardGridItem.java

@@ -1,52 +0,0 @@
-package com.wt.calendarcard;
-
-import java.util.Calendar;
-
-public class CardGridItem {
-
-	private Integer dayOfMonth;
-	private Object data;
-	private boolean enabled = true;
-	private Calendar date;
-	
-	public CardGridItem(Integer dom) { 
-		setDayOfMonth(dom);
-	}
-
-	public Integer getDayOfMonth() {
-		return dayOfMonth;
-	}
-
-	public CardGridItem setDayOfMonth(Integer dayOfMonth) {
-		this.dayOfMonth = dayOfMonth;
-		return this;
-	}
-
-	public Object getData() {
-		return data;
-	}
-
-	public CardGridItem setData(Object data) {
-		this.data = data;
-		return this;
-	}
-
-	public boolean isEnabled() {
-		return enabled;
-	}
-
-	public CardGridItem setEnabled(boolean enabled) {
-		this.enabled = enabled;
-		return this;
-	}
-
-	public Calendar getDate() {
-		return date;
-	}
-
-	public CardGridItem setDate(Calendar date) {
-		this.date = date;
-		return this;
-	}
-	
-}

+ 0 - 68
calendarcard/src/main/java/com/wt/calendarcard/CardPagerAdapter.java

@@ -1,68 +0,0 @@
-package com.wt.calendarcard;
-
-import java.util.Calendar;
-
-import android.content.Context;
-import android.os.Parcelable;
-import android.support.v4.view.PagerAdapter;
-import android.support.v4.view.ViewPager;
-import android.view.View;
-
-public class CardPagerAdapter extends PagerAdapter {
-	
-	private Context mContext;
-	private OnCellItemClick defaultOnCellItemClick;
-	
-	public CardPagerAdapter(Context ctx) {
-		mContext = ctx;
-	}
-
-	@Override
-	public Object instantiateItem(View collection, final int position) {
-		Calendar cal = Calendar.getInstance();
-		cal.add(Calendar.MONTH, position);
-		CalendarCard card = new CalendarCard(mContext);
-		card.setDateDisplay(cal);
-		card.notifyChanges();
-		if (card.getOnCellItemClick() == null)
-			card.setOnCellItemClick(defaultOnCellItemClick);
-		
-		((ViewPager) collection).addView(card,0);
-		
-		return card;
-	}
-	
-	@Override
-	public void destroyItem(View collection, int position, Object view) {
-		((ViewPager) collection).removeView((View) view);
-	}
-	
-	@Override
-	public boolean isViewFromObject(View view, Object object) {
-		return view==((View)object);
-	}
-	
-	@Override
-	public void finishUpdate(View arg0) {}
-	@Override
-	public void restoreState(Parcelable arg0, ClassLoader arg1) {}
-	@Override
-	public Parcelable saveState() { return null; }
-	@Override
-	public void startUpdate(View arg0) {}
-
-	@Override
-	public int getCount() {
-		// TODO almoast ifinite ;-)
-		return Integer.MAX_VALUE;
-	}
-
-	public OnCellItemClick getDefaultOnCellItemClick() {
-		return defaultOnCellItemClick;
-	}
-
-	public void setDefaultOnCellItemClick(OnCellItemClick defaultOnCellItemClick) {
-		this.defaultOnCellItemClick = defaultOnCellItemClick;
-	}
-
-}

+ 0 - 84
calendarcard/src/main/java/com/wt/calendarcard/CheckableLayout.java

@@ -1,84 +0,0 @@
-package com.wt.calendarcard;
-
-import android.annotation.SuppressLint;
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.View;
-import android.widget.Checkable;
-import android.widget.RelativeLayout;
-
-public class CheckableLayout extends RelativeLayout implements Checkable {
-
-    private static final int[] CHECKED_STATE_SET = {
-        android.R.attr.state_checked
-    };
-    
-    private boolean checked = false;
-
-    @SuppressLint("NewApi")
-    public CheckableLayout(Context context, AttributeSet attrs, int defStyle) {
-        super(context, attrs, defStyle);
-        init();
-    }
-
-    public CheckableLayout(Context context, AttributeSet attrs) {
-        super(context, attrs);
-        init();
-    }
-
-    public CheckableLayout(Context context) {
-        super(context);
-        init();
-    }
-    
-    private void init() {
-    	/*setOnClickListener(new View.OnClickListener() {
-			@Override
-			public void onClick(View v) {
-				setChecked(!isChecked());
-			}
-		});*/
-    }
-
-    @Override
-    public boolean isChecked() {
-        return checked;
-    }
-    
-    @Override
-    public void setChecked(boolean checked) {
-        this.checked = checked;
-        
-        refreshDrawableState();
-    
-        //Propagate to childs
-        final int count = getChildCount();
-        for (int i = 0; i < count; i++) {
-            final View child = getChildAt(i);
-            if(child instanceof Checkable) {
-                ((Checkable)child).setChecked(checked);
-            }
-        }
-    }
-    
-    @Override
-    protected int[] onCreateDrawableState(int extraSpace) {
-        final int[] drawableState = super.onCreateDrawableState(extraSpace + 1);
-        if (isChecked()) {
-            mergeDrawableStates(drawableState, CHECKED_STATE_SET);
-        }
-        return drawableState;
-    }
-
-    @Override
-    public void toggle() {
-        this.checked = !this.checked;
-    }
-
-	@Override
-	protected void onLayout(boolean changed, int l, int t, int r, int b) {
-		super.onLayout(changed, l, t, r, b);
-		//if (changed)
-		//	getLayoutParams().height = r - l;
-	}
-}

+ 0 - 9
calendarcard/src/main/java/com/wt/calendarcard/OnCellItemClick.java

@@ -1,9 +0,0 @@
-package com.wt.calendarcard;
-
-import android.view.View;
-
-public interface OnCellItemClick {
-	
-	public void onCellClick(View v, CardGridItem item);
-
-}

+ 0 - 8
calendarcard/src/main/java/com/wt/calendarcard/OnItemRender.java

@@ -1,8 +0,0 @@
-package com.wt.calendarcard;
-
-
-public interface OnItemRender {
-	
-	public void onRender(CheckableLayout v, CardGridItem item);
-
-}

BIN
calendarcard/src/main/res/drawable-hdpi/ic_launcher.png


BIN
calendarcard/src/main/res/drawable-mdpi/ic_launcher.png


BIN
calendarcard/src/main/res/drawable-xhdpi/ic_launcher.png


BIN
calendarcard/src/main/res/drawable-xxhdpi/ic_launcher.png


+ 0 - 5
calendarcard/src/main/res/drawable/card_grid_bg.xml

@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<shape xmlns:android="http://schemas.android.com/apk/res/android">
-    <solid android:color="@color/grid_border" />
-<!--     <stroke android:width="1dp" android:color="@color/grid_border" /> -->
-</shape>

+ 0 - 27
calendarcard/src/main/res/drawable/card_item_bg.xml

@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    
-    <item android:state_pressed="true" android:state_enabled="true">
-        <shape>
-            <solid android:color="#77FFFFFF"/>
-        </shape>
-    </item>
-    
-    <item android:state_checked="true" android:state_enabled="true">
-        <shape>
-            <solid android:color="#77DBDBDB"/>
-        </shape>
-    </item>
-    
-    <item android:state_enabled="false">
-        <shape>
-            <solid android:color="#FFF0F0F0"/>
-        </shape>
-    </item>
-    
-    <item>
-        <shape>
-            <solid android:color="#FFFFFFFF"/>
-        </shape>
-    </item>
-</selector>

+ 0 - 9
calendarcard/src/main/res/layout/card_cell.xml

@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<com.wt.calendarcard.CheckableLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:layout_weight="1"
-    style="@style/CalendarCard.Cell"
-    android:clickable="true">
-
-</com.wt.calendarcard.CheckableLayout>

+ 0 - 6
calendarcard/src/main/res/layout/card_item_simple.xml

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:padding="10dp"
-    android:gravity="center" />

+ 0 - 15
calendarcard/src/main/res/layout/card_row.xml

@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:orientation="horizontal">
-    
-    <include layout="@layout/card_cell"/>
-    <include layout="@layout/card_cell"/>
-    <include layout="@layout/card_cell"/>
-    <include layout="@layout/card_cell"/>
-    <include layout="@layout/card_cell"/>
-    <include layout="@layout/card_cell"/>
-    <include layout="@layout/card_cell"/>
-
-</LinearLayout>

+ 0 - 97
calendarcard/src/main/res/layout/card_view.xml

@@ -1,97 +0,0 @@
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:tools="http://schemas.android.com/tools"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    style="@style/CalendarCard.Root">
-    
-    <TextView 
-        style="@style/CalendarCard.Title"
-        android:id="@+id/cardTitle"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_alignParentTop="true"
-        android:layout_alignParentLeft="true" />
-    
-    <LinearLayout 
-        style="@style/CalendarCard.Days"
-        android:id="@+id/cardDays"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:orientation="horizontal"
-        android:layout_below="@+id/cardTitle">
-        
-        <TextView 
-	        android:id="@+id/cardDay1"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-        <TextView 
-	        android:id="@+id/cardDay2"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-        <TextView 
-	        android:id="@+id/cardDay3"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-        <TextView 
-	        android:id="@+id/cardDay4"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-        <TextView 
-	        android:id="@+id/cardDay5"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-        <TextView 
-	        android:id="@+id/cardDay6"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-        <TextView 
-	        android:id="@+id/cardDay7"
-	        android:layout_width="0dp"
-	        android:layout_height="wrap_content"
-	        android:layout_weight="1"
-	        style="@style/CalendarCard.Day" />
-        
-    </LinearLayout>
-    
-    <ScrollView 
-        android:layout_width="match_parent"
-		android:layout_height="wrap_content"
-		android:layout_below="@+id/cardDays">
-
-	    <LinearLayout
-	        style="@style/CalendarCard.Grid"
-	        android:id="@+id/cardGrid"
-	        android:layout_width="match_parent"
-		    android:layout_height="wrap_content"
-	        android:orientation="vertical">
-	        
-	        <include layout="@layout/card_row"/>
-	        <include layout="@layout/card_row"/>
-	        <include layout="@layout/card_row"/>
-	        <include layout="@layout/card_row"/>
-	        <include layout="@layout/card_row"/>
-	        <include layout="@layout/card_row"/>
-	        
-	    </LinearLayout>
-    
-    </ScrollView>
-
-</RelativeLayout>

+ 0 - 6
calendarcard/src/main/res/values/colors.xml

@@ -1,6 +0,0 @@
-<resources>
-
-    <color name="grid_bg">#FFFFFFFF</color>
-    <color name="grid_border">#FFC6C6C6</color>
-
-</resources>

+ 0 - 7
calendarcard/src/main/res/values/dimens.xml

@@ -1,7 +0,0 @@
-<resources>
-
-    <!-- Default screen margins, per the Android Design guidelines. -->
-    <dimen name="activity_horizontal_margin">16dp</dimen>
-    <dimen name="activity_vertical_margin">16dp</dimen>
-
-</resources>

+ 0 - 6
calendarcard/src/main/res/values/strings.xml

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-
-    <string name="app_name">calendar-card</string>
-
-</resources>

+ 0 - 57
calendarcard/src/main/res/values/styles.xml

@@ -1,57 +0,0 @@
-<resources>
-
-    <!--
-        Base application theme, dependent on API level. This theme is replaced
-        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-    -->
-    <style name="AppBaseTheme" parent="android:Theme.Light.NoTitleBar">
-        <!--
-            Theme customizations available in newer API levels can go in
-            res/values-vXX/styles.xml, while customizations related to
-            backward-compatibility can go here.
-        -->
-    </style>
-
-    <!-- Application theme. -->
-    <style name="AppTheme" parent="AppBaseTheme">
-        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
-    </style>
-    
-    <style name="CalendarCard">
-        
-    </style>
-    
-    <style name="CalendarCard.Root">
-        <item name="android:padding">10dp</item>
-    </style>
-    
-
-    <style name="CalendarCard.Day">
-        <item name="android:paddingBottom">5dp</item>
-        <item name="android:textSize">12sp</item>
-        <item name="android:gravity">center</item>
-    </style>
-    
-    <style name="CalendarCard.Days">
-        <item name="android:padding">0dp</item>
-    </style>
-    
-    <style name="CalendarCard.Title">
-        <item name="android:padding">5dp</item>
-        <item name="android:textSize">20sp</item>
-        <item name="android:gravity">center</item>
-    </style>
-    
-    <style name="CalendarCard.Grid">
-        <item name="android:background">@drawable/card_grid_bg</item>
-        <item name="android:paddingRight">1dp</item>
-        <item name="android:paddingBottom">1dp</item>
-    </style>
-    
-    <style name="CalendarCard.Cell">
-        <item name="android:background">@drawable/card_item_bg</item>
-        <item name="android:layout_marginLeft">1dp</item>
-        <item name="android:layout_marginTop">1dp</item>
-    </style>
-
-</resources>

+ 1 - 1
settings.gradle

@@ -1 +1 @@
-include ':app',':calendarcard',':social_sdk_library_project'
+include ':app',':social_sdk_library_project'