diff options
author | Thore Goebel <goebel.thore@gmail.com> | 2020-06-17 11:04:27 +0300 |
---|---|---|
committer | Thore Goebel <goebel.thore@gmail.com> | 2020-06-17 11:42:56 +0300 |
commit | 28107c99fd65da57bb1fc40976f72fc213e078f4 (patch) | |
tree | b88638b9442dbecb405b96f337175b287fc621f8 | |
parent | 0b47381757692c8502e0c9718ef808d395c10486 (diff) |
Improve navdrawer items designtouch-navdrawer
- make them rounded (like in the files app)
- add touch states
4 files changed, 65 insertions, 2 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/NavigationAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/model/NavigationAdapter.java index 751fc581..938f2f7e 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/model/NavigationAdapter.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/model/NavigationAdapter.java @@ -111,12 +111,13 @@ public class NavigationAdapter extends RecyclerView.Adapter<NavigationAdapter.Vi } else { icon.setVisibility(View.GONE); } - view.setBackgroundColor(isSelected ? view.getResources().getColor(R.color.bg_highlighted) : Color.TRANSPARENT); int textColor = isSelected ? mainColor : view.getResources().getColor(R.color.fg_default); name.setTextColor(textColor); count.setTextColor(textColor); icon.setColorFilter(isSelected ? textColor : 0); + + view.setSelected(isSelected); } } diff --git a/app/src/main/res/drawable-v21/bg_navdrawer_item.xml b/app/src/main/res/drawable-v21/bg_navdrawer_item.xml new file mode 100644 index 00000000..438be114 --- /dev/null +++ b/app/src/main/res/drawable-v21/bg_navdrawer_item.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="utf-8"?> +<ripple xmlns:android="http://schemas.android.com/apk/res/android" + android:color="?colorControlHighlight"> + + <item + android:id="@android:id/mask" + android:left="@dimen/spacer_1x" + android:right="@dimen/spacer_1x" + android:top="@dimen/spacer_1hx" + android:bottom="@dimen/spacer_1hx"> + + <shape android:shape="rectangle"> + <!-- value of color is irrelevant, but solid needs to be defined for mask to work --> + <solid android:color="@color/bg_highlighted" /> + <corners android:radius="@dimen/spacer_1hx" /> + </shape> + </item> + + <item + android:left="@dimen/spacer_1x" + android:right="@dimen/spacer_1x" + android:top="@dimen/spacer_1hx" + android:bottom="@dimen/spacer_1hx"> + + <selector> + <item android:state_selected="true"> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/spacer_1hx" /> + <solid android:color="@color/bg_highlighted" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"> + <corners android:radius="@dimen/spacer_1hx" /> + </shape> + </item> + </selector> + </item> + +</ripple>
\ No newline at end of file diff --git a/app/src/main/res/drawable/bg_navdrawer_item.xml b/app/src/main/res/drawable/bg_navdrawer_item.xml new file mode 100644 index 00000000..50924f28 --- /dev/null +++ b/app/src/main/res/drawable/bg_navdrawer_item.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8"?> +<selector xmlns:android="http://schemas.android.com/apk/res/android" + android:left="@dimen/spacer_1x" + android:right="@dimen/spacer_1x" + android:top="@dimen/spacer_1hx" + android:bottom="@dimen/spacer_1hx"> + + <item android:state_selected="true"> + <shape android:shape="rectangle"> + <solid android:color="@color/bg_highlighted" /> + </shape> + </item> + + <item> + <shape android:shape="rectangle"/> + </item> + +</selector>
\ No newline at end of file diff --git a/app/src/main/res/layout/item_navigation.xml b/app/src/main/res/layout/item_navigation.xml index 9ab8e6d7..84694fa9 100644 --- a/app/src/main/res/layout/item_navigation.xml +++ b/app/src/main/res/layout/item_navigation.xml @@ -3,9 +3,12 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" + android:background="@drawable/bg_navdrawer_item" android:gravity="center_vertical" + android:paddingTop="@dimen/spacer_1hx" + android:paddingBottom="@dimen/spacer_1hx" android:paddingStart="@dimen/spacer_1x" - android:paddingEnd="@dimen/spacer_1x"> + android:paddingEnd="@dimen/spacer_2x"> <androidx.appcompat.widget.AppCompatImageView android:id="@+id/navigationItemIcon" |