import android.support.v7.widget.DividerItemDecoration;
import android.support.wear.widget.WearableLinearLayoutManager;
import android.support.wear.widget.WearableRecyclerView;
+import android.support.wear.widget.drawer.WearableActionDrawerView;
import android.support.wearable.activity.WearableActivity;
import android.util.Log;
+import android.view.MenuItem;
+import android.widget.Toast;
import net.osdn.gokigen.joggingtimer.R;
-public class DetailActivity extends WearableActivity implements RecordDetailSetup.IDatabaseReadyNotify
+public class DetailActivity extends WearableActivity implements RecordDetailSetup.IDatabaseReadyNotify, MenuItem.OnMenuItemClickListener
{
private final String TAG = toString();
public static final String INTENT_EXTRA_DATA_ID = "Detail.dataId";
private RecordDetailAdapter detailAdapter = null;
private RecordDetailSetup setupper = null;
+ private WearableActionDrawerView actionDrawerView = null;
+
/**
*
*/
e.printStackTrace();
detailAdapter = null;
}
+
+ // Bottom Action Drawer
+ actionDrawerView = findViewById(R.id.bottom_action_drawer);
+ actionDrawerView.getController().peekDrawer();
+ actionDrawerView.setOnMenuItemClickListener(this);
+
}
/**
{
Log.v(TAG, "databaseSetupFinished() : " + result);
}
+
+ /**
+ *
+ *
+ */
+ @Override
+ public boolean onMenuItemClick(MenuItem item)
+ {
+ Log.v(TAG, "onMenuItemClick(): " + item);
+
+ boolean ret = false;
+ final int itemId = item.getItemId();
+ String toastMessage = "";
+ switch (itemId)
+ {
+ case R.id.menu_edit_title:
+ // タイトルの編集
+ toastMessage = getString(R.string.action_edit_title);
+ ret = true;
+ break;
+
+ case R.id.menu_set_reference:
+ // 現在のデータを基準値を設定する
+ toastMessage = getString(R.string.action_set_reference);
+ ret = true;
+ break;
+
+ case R.id.menu_set_icon:
+ // アイコンセレクタを表示して、設定する
+ toastMessage = "SET ICON.(TBD)";
+ break;
+
+ default:
+ // 何もしない
+ break;
+ }
+ try
+ {
+ actionDrawerView.getController().closeDrawer();
+
+ if (toastMessage.length() > 0)
+ {
+ Toast toast = Toast.makeText(getApplicationContext(), toastMessage, Toast.LENGTH_SHORT);
+ toast.show();
+ }
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+
+ return (ret);
+ }
}
{
private static int iconIds[] = {
R.drawable.ic_label_outline_black_24dp ,
+ R.drawable.ic_bookmark_border_black_24dp,
+ R.drawable.ic_content_paste_black_24dp,
+ R.drawable.ic_lightbulb_outline_black_24dp,
R.drawable.ic_done_black_24dp,
+ R.drawable.ic_bookmark_black_24dp,
+ R.drawable.ic_book_black_24dp,
+ R.drawable.ic_receipt_black_24dp,
R.drawable.ic_info_outline_black_24dp ,
+ R.drawable.ic_check_circle_black_24dp,
+ R.drawable.ic_info_black_24dp,
R.drawable.ic_warning_black_24dp ,
R.drawable.ic_thumb_down_black_24dp ,
R.drawable.ic_thumb_up_black_24dp ,
R.drawable.ic_beach_access_black_24dp,
R.drawable.ic_fitness_center_black_24dp,
R.drawable.ic_golf_course_black_24dp,
- R.drawable.ic_android_black_24dp,
};
public static int getIconResourceId(int id)
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M19,3h-4.18C14.4,1.84 13.3,1 12,1c-1.3,0 -2.4,0.84 -2.82,2L5,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2L21,5c0,-1.1 -0.9,-2 -2,-2zM12,3c0.55,0 1,0.45 1,1s-0.45,1 -1,1 -1,-0.45 -1,-1 0.45,-1 1,-1zM10,17l-4,-4 1.41,-1.41L10,14.17l6.59,-6.59L18,9l-8,8z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M18,2H6c-1.1,0 -2,0.9 -2,2v16c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2V4c0,-1.1 -0.9,-2 -2,-2zM6,4h5v8l-2.5,-1.5L6,12V4z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M17,3H7c-1.1,0 -1.99,0.9 -1.99,2L5,21l7,-3 7,3V5c0,-1.1 -0.9,-2 -2,-2z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M17,3L7,3c-1.1,0 -1.99,0.9 -1.99,2L5,21l7,-3 7,3L19,5c0,-1.1 -0.9,-2 -2,-2zM17,18l-5,-2.18L7,18L7,5h10v13z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM10,17l-5,-5 1.41,-1.41L10,14.17l7.59,-7.59L19,8l-9,9z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M19,2h-4.18C14.4,0.84 13.3,0 12,0c-1.3,0 -2.4,0.84 -2.82,2L5,2c-1.1,0 -2,0.9 -2,2v16c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2L21,4c0,-1.1 -0.9,-2 -2,-2zM12,2c0.55,0 1,0.45 1,1s-0.45,1 -1,1 -1,-0.45 -1,-1 0.45,-1 1,-1zM19,20L5,20L5,4h2v3h10L17,4h2v16z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM13,17h-2v-6h2v6zM13,9h-2L11,7h2v2z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M9,21c0,0.55 0.45,1 1,1h4c0.55,0 1,-0.45 1,-1v-1L9,20v1zM12,2C8.14,2 5,5.14 5,9c0,2.38 1.19,4.47 3,5.74L8,17c0,0.55 0.45,1 1,1h6c0.55,0 1,-0.45 1,-1v-2.26c1.81,-1.27 3,-3.36 3,-5.74 0,-3.86 -3.14,-7 -7,-7zM14.85,13.1l-0.85,0.6L14,16h-4v-2.3l-0.85,-0.6C7.8,12.16 7,10.63 7,9c0,-2.76 2.24,-5 5,-5s5,2.24 5,5c0,1.63 -0.8,3.16 -2.15,4.1z"/>
+</vector>
--- /dev/null
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+ <path
+ android:fillColor="#FF000000"
+ android:pathData="M18,17L6,17v-2h12v2zM18,13L6,13v-2h12v2zM18,9L6,9L6,7h12v2zM3,22l1.5,-1.5L6,22l1.5,-1.5L9,22l1.5,-1.5L12,22l1.5,-1.5L15,22l1.5,-1.5L18,22l1.5,-1.5L21,22L21,2l-1.5,1.5L18,2l-1.5,1.5L15,2l-1.5,1.5L12,2l-1.5,1.5L9,2 7.5,3.5 6,2 4.5,3.5 3,2v20z"/>
+</vector>
<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
+<android.support.wear.widget.drawer.WearableDrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:id="@+id/detail_drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:id="@+id/time_list"
- android:orientation="vertical"
- android:scrollbarAlwaysDrawVerticalTrack="true">
+ android:background="@color/black"
+ tools:context="net.osdn.gokigen.joggingtimer.recorddetail.DetailActivity">
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:id="@+id/detail_title_area"
- android:text="@string/result_detail"
- android:textAlignment="center"
- android:clickable="true"
- android:focusable="true"
- android:visibility="visible"
- />
- <android.support.wear.widget.WearableRecyclerView
+ <LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/recycler_detail_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:scrollbars="vertical"
- >
+ android:id="@+id/time_list"
+ android:orientation="vertical"
+ android:scrollbarAlwaysDrawVerticalTrack="true">
+
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/detail_title_area"
+ android:text="@string/result_detail"
+ android:textAlignment="center"
+ android:clickable="true"
+ android:focusable="true"
+ android:visibility="visible"
+ />
+ <android.support.wear.widget.WearableRecyclerView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/recycler_detail_view"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:scrollbars="vertical"
+ >
- </android.support.wear.widget.WearableRecyclerView>
+ </android.support.wear.widget.WearableRecyclerView>
+ </LinearLayout>
+ <android.support.wear.widget.drawer.WearableNavigationDrawerView
+ android:id="@+id/top_navigation_drawer"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/grey"
+ android:visibility="gone"
+ app:navigationStyle="multiPage" />
+
+ <android.support.wear.widget.drawer.WearableActionDrawerView
+ android:id="@+id/bottom_action_drawer"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/grey"
+ android:visibility="visible"
+ app:actionMenu="@menu/selector_detail" />
-</LinearLayout>
+</android.support.wear.widget.drawer.WearableDrawerLayout>
<?xml version="1.0" encoding="utf-8"?>
+<android.support.wear.widget.drawer.WearableDrawerLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:id="@+id/list_drawer_layout"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/black"
+ tools:context="net.osdn.gokigen.joggingtimer.recordlist.ListActivity">
+
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
</LinearLayout>
+
+</android.support.wear.widget.drawer.WearableDrawerLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
+<android.support.wear.widget.drawer.WearableDrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:id="@+id/detail_drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:id="@+id/time_list"
- android:orientation="vertical"
- android:scrollbarAlwaysDrawVerticalTrack="true">
-
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:id="@+id/detail_title_area"
- android:text="@string/result_detail"
- android:textAlignment="center"
- android:clickable="true"
- android:focusable="true"
- android:visibility="gone"
- />
- <android.support.wear.widget.WearableRecyclerView
+ android:background="@color/black"
+ tools:context="net.osdn.gokigen.joggingtimer.recorddetail.DetailActivity">
+ <LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/recycler_detail_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:scrollbars="vertical"
- >
+ android:id="@+id/time_list"
+ android:orientation="vertical"
+ android:scrollbarAlwaysDrawVerticalTrack="true">
- </android.support.wear.widget.WearableRecyclerView>
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/detail_title_area"
+ android:text="@string/result_detail"
+ android:textAlignment="center"
+ android:clickable="true"
+ android:focusable="true"
+ android:visibility="gone"
+ />
+ <android.support.wear.widget.WearableRecyclerView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/recycler_detail_view"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:scrollbars="vertical"
+ >
+ </android.support.wear.widget.WearableRecyclerView>
+ </LinearLayout>
+ <android.support.wear.widget.drawer.WearableNavigationDrawerView
+ android:id="@+id/top_navigation_drawer"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/grey"
+ android:visibility="gone"
+ app:navigationStyle="multiPage" />
+
+ <android.support.wear.widget.drawer.WearableActionDrawerView
+ android:id="@+id/bottom_action_drawer"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@color/grey"
+ android:visibility="visible"
+ app:actionMenu="@menu/selector_detail" />
-</LinearLayout>
+</android.support.wear.widget.drawer.WearableDrawerLayout>
<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
+<android.support.wear.widget.drawer.WearableDrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:id="@+id/list_drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:id="@+id/time_list"
- android:orientation="vertical"
- android:scrollbarAlwaysDrawVerticalTrack="true">
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:id="@+id/list_title_area"
- android:text="@string/result_list"
- android:textAlignment="center"
- android:clickable="true"
- android:focusable="true"
- android:visibility="gone"
- />
- <android.support.wear.widget.WearableRecyclerView
+ android:background="@color/black"
+ tools:context="net.osdn.gokigen.joggingtimer.recordlist.ListActivity">
+
+ <LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/recycler_list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:scrollbars="vertical"
- >
-
- </android.support.wear.widget.WearableRecyclerView>
-
+ android:id="@+id/time_list"
+ android:orientation="vertical"
+ android:scrollbarAlwaysDrawVerticalTrack="true">
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/list_title_area"
+ android:text="@string/result_list"
+ android:textAlignment="center"
+ android:clickable="true"
+ android:focusable="true"
+ android:visibility="gone"
+ />
+ <android.support.wear.widget.WearableRecyclerView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/recycler_list_view"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:scrollbars="vertical"
+ >
+ </android.support.wear.widget.WearableRecyclerView>
+ </LinearLayout>
-</LinearLayout>
+</android.support.wear.widget.drawer.WearableDrawerLayout>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:compat="http://schemas.android.com/apk/res-auto" >
+
+ <item android:id="@+id/menu_edit_title"
+ android:icon="@drawable/ic_edit_black_24dp"
+ android:title="@string/action_edit_title"
+ android:visible="true">
+ </item>
+
+ <item android:id="@+id/menu_set_icon"
+ android:icon="@drawable/ic_android_black_24dp"
+ android:title="@string/action_change_icon"
+ android:visible="true">
+ </item>
+
+ <item android:id="@+id/menu_set_reference"
+ android:icon="@drawable/ic_assignment_turned_in_black_24dp"
+ android:title="@string/action_set_reference"
+ android:visible="true">
+ </item>
+
+</menu>
<string name="dialog_message_delete">削除します </string>
<string name="dialog_positive_execute">OK</string>
<string name="dialog_negative_cancel">Cancel</string>
+ <string name="action_edit_title">タイトル編集</string>
+ <string name="action_change_icon">アイコンの変更</string>
+ <string name="action_set_reference">基準値に設定</string>
</resources>
\ No newline at end of file
<string name="dialog_message_delete">DELETE OK? </string>
<string name="dialog_positive_execute">OK</string>
<string name="dialog_negative_cancel">Cancel</string>
+ <string name="action_edit_title">Edit Title</string>
+ <string name="action_change_icon">Change Icon</string>
+ <string name="action_set_reference">Set Reference Data</string>
</resources>
<string name="dialog_message_delete">DELETE OK? </string>
<string name="dialog_positive_execute">OK</string>
<string name="dialog_negative_cancel">Cancel</string>
+ <string name="action_edit_title">Edit Title</string>
+ <string name="action_change_icon">Change Icon</string>
+ <string name="action_set_reference">Set Reference Data</string>
</resources>