Simple screens and logic with Navigation Component
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="24"
|
||||
android:viewportHeight="24">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,5c1.66,0 3,1.34 3,3s-1.34,3 -3,3 -3,-1.34 -3,-3 1.34,-3 3,-3zM12,19.2c-2.5,0 -4.71,-1.28 -6,-3.22 0.03,-1.99 4,-3.08 6,-3.08 1.99,0 5.97,1.09 6,3.08 -1.29,1.94 -3.5,3.22 -6,3.22z"/>
|
||||
</vector>
|
||||
@@ -4,6 +4,11 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="conversations" />
|
||||
|
||||
<com.google.android.material.appbar.AppBarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
@@ -5,20 +5,25 @@
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="friends" />
|
||||
|
||||
<com.google.android.material.appbar.AppBarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@android:color/transparent"
|
||||
app:elevation="0dp">
|
||||
|
||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:background="@drawable/toolbar_background"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:background="@drawable/toolbar_background"
|
||||
app:layout_scrollFlags="scroll|enterAlways">
|
||||
|
||||
<include layout="@layout/toolbar" />
|
||||
|
||||
@@ -3,4 +3,9 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="important" />
|
||||
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:id="@+id/loginRoot"
|
||||
@@ -8,6 +9,12 @@
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<WebView
|
||||
android:id="@+id/webView"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="0dp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<androidx.core.widget.NestedScrollView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@@ -16,6 +23,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:animateLayoutChanges="true"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
android:padding="16dp">
|
||||
@@ -37,6 +45,14 @@
|
||||
app:tint="?colorAccent" />
|
||||
</FrameLayout>
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/progress"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="48dp"
|
||||
android:visibility="gone"
|
||||
tools:visibility="visible" />
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/loginContainer"
|
||||
android:layout_width="match_parent"
|
||||
@@ -110,7 +126,7 @@
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/authorize"
|
||||
android:id="@+id/auth"
|
||||
style="@style/Widget.MaterialButton"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="60dp"
|
||||
|
||||
@@ -2,17 +2,17 @@
|
||||
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<item
|
||||
android:id="@+id/navigationFriends"
|
||||
android:id="@id/friends"
|
||||
android:icon="@drawable/ic_people_outline"
|
||||
android:title="@string/navigation_friends" />
|
||||
|
||||
<item
|
||||
android:id="@+id/navigationConversations"
|
||||
android:id="@id/messages"
|
||||
android:icon="@drawable/ic_message_outline"
|
||||
android:title="@string/navigation_chats" />
|
||||
|
||||
<item
|
||||
android:id="@+id/navigationImportant"
|
||||
android:id="@id/important"
|
||||
android:icon="@drawable/ic_star_border"
|
||||
android:title="@string/navigation_important" />
|
||||
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/friends">
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/friends"
|
||||
app:startDestination="@+id/friendsFragment">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/friendsFragment"
|
||||
android:name="com.meloda.fast.fragment.friends.FriendsFragment"
|
||||
android:label="FriendsFragment"
|
||||
tools:layout="@layout/fragment_friends" />
|
||||
|
||||
</navigation>
|
||||
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<navigation 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/important"
|
||||
app:startDestination="@id/importantFragment">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/importantFragment"
|
||||
android:name="com.meloda.fast.fragment.important.ImportantFragment"
|
||||
android:label="ImportantFragment"
|
||||
tools:layout="@layout/fragment_important" />
|
||||
|
||||
</navigation>
|
||||
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<navigation 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/login"
|
||||
app:startDestination="@id/loginFragment">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/loginFragment"
|
||||
android:name="com.meloda.fast.fragment.login.LoginFragment"
|
||||
android:label="LoginFragment"
|
||||
tools:layout="@layout/fragment_login">
|
||||
|
||||
<action
|
||||
android:id="@+id/toMain"
|
||||
app:destination="@id/mainFragment"
|
||||
app:popUpTo="@id/loginFragment"
|
||||
app:popUpToInclusive="true" />
|
||||
|
||||
<action
|
||||
android:id="@+id/toValidation"
|
||||
app:destination="@id/validationFragment" />
|
||||
|
||||
</fragment>
|
||||
|
||||
<fragment
|
||||
android:id="@+id/validationFragment"
|
||||
android:name="com.meloda.fast.fragment.login.ValidationFragment"
|
||||
android:label="ValidationFragment"
|
||||
tools:layout="@layout/fragment_validation">
|
||||
|
||||
<action
|
||||
android:id="@+id/toLogin"
|
||||
app:destination="@id/loginFragment"
|
||||
app:popUpTo="@id/validationFragment"
|
||||
app:popUpToInclusive="true" />
|
||||
|
||||
</fragment>
|
||||
|
||||
|
||||
</navigation>
|
||||
@@ -3,13 +3,19 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/main"
|
||||
app:startDestination="@id/loginFragment">
|
||||
app:startDestination="@id/mainFragment">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/mainFragment"
|
||||
android:name="com.meloda.fast.fragment.main.MainFragment"
|
||||
android:label="MainFragment"
|
||||
tools:layout="@layout/fragment_main" />
|
||||
tools:layout="@layout/fragment_main">
|
||||
|
||||
<action
|
||||
android:id="@+id/toLogin"
|
||||
app:destination="@id/loginFragment" />
|
||||
|
||||
</fragment>
|
||||
|
||||
<fragment
|
||||
android:id="@+id/loginFragment"
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/messages">
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/messages"
|
||||
app:startDestination="@+id/conversationsFragment">
|
||||
|
||||
<fragment
|
||||
android:id="@+id/conversationsFragment"
|
||||
android:name="com.meloda.fast.fragment.messages.ConversationsFragment"
|
||||
android:label="ConversationsFragment"
|
||||
tools:layout="@layout/fragment_conversations" />
|
||||
|
||||
</navigation>
|
||||
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar.Bridge">
|
||||
<item name="colorPrimary">@color/dark_primary</item>
|
||||
<item name="colorPrimaryDark">@color/dark_primaryDark</item>
|
||||
<item name="colorAccent">@color/dark_accent</item>
|
||||
|
||||
<item name="toolbarStyle">@style/AppTheme.Toolbar</item>
|
||||
|
||||
<item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
|
||||
<item name="dialogCornerRadius">12dp</item>
|
||||
<item name="android:windowBackground">@color/dark_background</item>
|
||||
<item name="itemTitleColor">?colorAccent</item>
|
||||
<item name="dividerHorizontal">@color/dark_divider</item>
|
||||
<item name="textColorSecondary">@color/dark_textSecondary</item>
|
||||
<item name="editTextFilledBackgroundColor">@color/dark_edittext_filled_background</item>
|
||||
|
||||
<item name="messageInTextColor">@color/dark_message_in</item>
|
||||
<item name="messageOutTextColor">@color/dark_message_out</item>
|
||||
|
||||
<item name="android:windowAnimationStyle">@style/AppTheme.ActivityAnimation</item>
|
||||
|
||||
<item name="android:navigationBarColor">@color/dark_navigationBar</item>
|
||||
<item name="android:navigationBarDividerColor" tools:targetApi="o_mr1">
|
||||
@android:color/transparent
|
||||
</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.Toolbar" parent="Widget.MaterialComponents.Toolbar.PrimarySurface">
|
||||
<item name="titleTextAppearance">@style/Toolbar.Title</item>
|
||||
<item name="android:textSize">24sp</item>
|
||||
<item name="android:elevation">3dp</item>
|
||||
<item name="titleTextColor">@color/dark_accent</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.Login.EditText" parent="">
|
||||
<item name="android:layout_height">52dp</item>
|
||||
<item name="android:background">@drawable/edittext_filled_background</item>
|
||||
<item name="android:paddingStart">16dp</item>
|
||||
<item name="android:paddingEnd">16dp</item>
|
||||
<item name="android:layout_marginEnd">16dp</item>
|
||||
<item name="android:textSize">14sp</item>
|
||||
<item name="android:textColor">?android:textColorPrimary</item>
|
||||
<item name="android:textColorHint">?textColorSecondary</item>
|
||||
<item name="fontFamily">@font/google_sans_regular</item>
|
||||
<item name="android:singleLine">true</item>
|
||||
<item name="android:maxLines">1</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.FullScreenDialog" parent="Theme.MaterialComponents.DayNight.Dialog.Bridge">
|
||||
<item name="colorPrimary">@color/dark_primary</item>
|
||||
<item name="colorPrimaryDark">@color/dark_primaryDark</item>
|
||||
<item name="colorAccent">@color/dark_accent</item>
|
||||
<item name="android:windowIsFloating">false</item>
|
||||
<item name="android:windowBackground">@color/dark_background</item>
|
||||
<item name="actionMenuTextColor">?colorAccent</item>
|
||||
|
||||
<item name="android:navigationBarColor" tools:targetApi="o_mr1">@color/dark_navigationBar</item>
|
||||
<item name="android:navigationBarDividerColor" tools:targetApi="o_mr1">
|
||||
@android:color/transparent
|
||||
</item>
|
||||
|
||||
<item name="colorControlNormal">?colorAccent</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.ProfileDialog" parent="Theme.MaterialComponents.DayNight.BottomSheetDialog">
|
||||
<item name="colorAccent">@color/dark_accent</item>
|
||||
<item name="colorPrimary">@color/dark_primary</item>
|
||||
<item name="colorPrimaryDark">@color/dark_primaryDark</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar.Bridge">
|
||||
<style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar.Bridge">
|
||||
<item name="colorPrimary">@color/primary</item>
|
||||
<item name="colorPrimaryDark">@color/primaryDark</item>
|
||||
<item name="colorAccent">@color/accent</item>
|
||||
@@ -27,8 +27,6 @@
|
||||
<item name="android:navigationBarDividerColor" tools:targetApi="o_mr1">
|
||||
@android:color/transparent
|
||||
</item>
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.Toolbar" parent="Widget.MaterialComponents.Toolbar.PrimarySurface">
|
||||
@@ -59,15 +57,16 @@
|
||||
<item name="android:maxLines">1</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.FullScreenDialog" parent="Theme.MaterialComponents.Light.Dialog.Bridge">
|
||||
<style name="AppTheme.FullScreenDialog" parent="Theme.MaterialComponents.DayNight.Dialog.Bridge">
|
||||
<item name="colorPrimary">@color/primary</item>
|
||||
<item name="colorPrimaryDark">@color/primaryDark</item>
|
||||
<item name="colorAccent">@color/accent</item>
|
||||
<item name="android:windowIsFloating">false</item>
|
||||
<item name="android:windowBackground">@color/background</item>
|
||||
<item name="actionMenuTextColor">?colorAccent</item>
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
|
||||
<item name="android:navigationBarColor" tools:targetApi="o_mr1">?colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor" tools:targetApi="o_mr1">@color/navigationBar</item>
|
||||
<item name="android:windowLightNavigationBar" tools:targetApi="o_mr1">true</item>
|
||||
<item name="android:navigationBarDividerColor" tools:targetApi="o_mr1">
|
||||
@android:color/transparent
|
||||
@@ -82,10 +81,11 @@
|
||||
<item name="android:layout_marginEnd">12dp</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.ProfileDialog" parent="Theme.MaterialComponents.Light.BottomSheetDialog">
|
||||
<style name="AppTheme.ProfileDialog" parent="Theme.MaterialComponents.DayNight.BottomSheetDialog">
|
||||
<item name="colorAccent">@color/accent</item>
|
||||
<item name="colorPrimary">@color/primary</item>
|
||||
<item name="colorPrimaryDark">@color/primaryDark</item>
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
</style>
|
||||
|
||||
<style name="Widget.TextInputLayout" parent="Widget.MaterialComponents.TextInputLayout.OutlinedBox">
|
||||
|
||||
Reference in New Issue
Block a user