1
0

Add grades interface and change app appearance (#14)

* Change style and remake activity_main layout

* Change to a brighter navigation background color

* Add expandable recyclerView (thoughtbot)

* Add indicator to expandableRecyclerView and empty subject not shown

* Add Dialog Fragment with grade details
This commit is contained in:
RicomenPL
2017-08-29 14:22:55 +02:00
committed by Mikołaj Pich
parent ba7c8f0b1e
commit cd687a6108
35 changed files with 845 additions and 259 deletions

View File

@ -23,7 +23,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="?android:attr/windowBackground"
android:background="@color/colorBackgroundBottomNavi"
app:itemIconTint="@color/bottomnavi_color"
app:itemTextColor="@color/bottomnavi_color"
app:menu="@menu/navigation" />

View File

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
@ -26,7 +27,7 @@
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:ems="10"
android:hint="@string/email_hint"
android:hint="@string/email_hint_text"
android:inputType="textEmailAddress" />
<EditText
@ -37,8 +38,9 @@
android:layout_marginTop="10dp"
android:ems="10"
android:fontFamily="sans-serif"
android:hint="@string/pass_hint"
android:inputType="textPassword" />
android:hint="@string/pass_hint_text"
android:inputType="textPassword"
tools:ignore="UnusedAttribute" />
<AutoCompleteTextView
android:id="@+id/countyText"
@ -46,7 +48,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:hint="@string/county_hint"
android:hint="@string/county_hint_text"
android:imeOptions="actionDone"
android:inputType="text" />
@ -57,7 +59,7 @@
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:onClick="login"
android:text="@string/login_button" />
android:text="@string/login_button_text" />
</LinearLayout>
</ScrollView>

View File

@ -1,54 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="io.github.wulkanowy.activity.started.StartedActivity"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="0dp">
android:orientation="vertical">
<ImageView
android:id="@+id/logoImage"
android:layout_width="250dp"
android:layout_height="200dp"
android:layout_gravity="center"
android:layout_marginTop="70dp"
android:src="@drawable/logo_image"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/nameApp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="228dp"
android:layout_gravity="center"
android:layout_marginTop="50dp"
android:text="@string/app_name"
android:textSize="40sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.503"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
tools:layout_constraintBottom_creator="1"
tools:layout_constraintLeft_creator="1"
tools:layout_constraintRight_creator="1" />
<ImageView
android:id="@+id/logoImage"
android:layout_width="201dp"
android:layout_height="176dp"
android:layout_marginBottom="53dp"
android:src="@drawable/logo_image"
app:layout_constraintBottom_toTopOf="@+id/nameApp"
app:layout_constraintHorizontal_bias="0.503"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
tools:layout_constraintBottom_creator="1"
tools:layout_constraintLeft_creator="1"
tools:layout_constraintRight_creator="1" />
android:textSize="40sp" />
<TextView
android:id="@+id/rawText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="57dp"
android:text="@string/under_logo"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/nameApp"
tools:layout_constraintLeft_creator="1"
tools:layout_constraintRight_creator="1"
tools:layout_constraintTop_creator="1" />
</android.support.constraint.ConstraintLayout>
android:layout_gravity="center"
android:layout_marginTop="50dp"
android:text="@string/version_text"
android:textSize="20sp" />
</LinearLayout>

View File

@ -2,13 +2,12 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="io.github.wulkanowy.activity.dashboard.marks.MarksFragment">
tools:context="io.github.wulkanowy.activity.dashboard.grades.GradesFragment">
<android.support.v7.widget.RecyclerView
android:id="@+id/card_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical" />
android:id="@+id/subject_grade_recycler" />
<RelativeLayout
android:id="@+id/loadingPanel"

View File

@ -0,0 +1,59 @@
<android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/grade_cardview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginEnd="5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_marginStart="5dp"
android:layout_marginTop="5dp"
android:foreground="?attr/selectableItemBackgroundBorderless"
card_view:cardElevation="0dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="7dp"
android:layout_marginEnd="7dp"
android:layout_marginLeft="7dp"
android:layout_marginRight="7dp"
android:layout_marginStart="7dp"
android:layout_marginTop="7dp">
<TextView
android:id="@+id/grade_text"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_centerVertical="true"
android:gravity="center"
android:textSize="19sp" />
<TextView
android:id="@+id/description_grade_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginEnd="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginStart="10dp"
android:layout_toEndOf="@+id/grade_text"
android:layout_toRightOf="@+id/grade_text"
android:ellipsize="end"
android:maxLines="1"
android:text="@string/app_name"
android:textSize="19sp" />
<TextView
android:id="@+id/grade_date_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/grade_text"
android:layout_alignLeft="@+id/description_grade_text"
android:layout_alignStart="@+id/description_grade_text"
android:text="@string/grades_text"
android:textSize="13sp" />
</RelativeLayout>
</android.support.v7.widget.CardView>

View File

@ -0,0 +1,180 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:minHeight="350dp"
android:minWidth="300dp"
android:orientation="vertical"
android:padding="20dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/dialog_grade_text"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:gravity="center"
android:text="@string/app_name"
android:textSize="30sp" />
<TextView
android:id="@+id/subject_dialog_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginEnd="80dp"
android:layout_marginRight="80dp"
android:text="@string/dialog_subject_text"
android:textSize="17sp" />
<TextView
android:id="@+id/subject_dialog_text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/subject_dialog_text"
android:layout_marginEnd="80dp"
android:layout_marginRight="80dp"
android:layout_marginTop="3dp"
android:text="@string/grades_text"
android:textSize="12sp" />
<TextView
android:id="@+id/description_dialog_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/dialog_description_text"
android:textSize="17sp"
android:layout_marginTop="10dp"
android:layout_below="@+id/subject_dialog_text_value"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<TextView
android:id="@+id/description_dialog_text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/description_dialog_text"
android:layout_marginEnd="80dp"
android:layout_marginRight="80dp"
android:layout_marginTop="3dp"
android:maxLines="3"
android:text="@string/noDescription_text"
android:textSize="12sp" />
<TextView
android:id="@+id/weight_dialog_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/description_dialog_text_value"
android:layout_marginEnd="80dp"
android:layout_marginRight="80dp"
android:layout_marginTop="10dp"
android:text="@string/dialog_weight_text"
android:textSize="17sp" />
<TextView
android:id="@+id/weight_dialog_text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/weight_dialog_text"
android:layout_marginEnd="80dp"
android:layout_marginRight="80dp"
android:layout_marginTop="3dp"
android:text="@string/grades_text"
android:textSize="12sp" />
</RelativeLayout>
<TextView
android:id="@+id/teacher_dialog_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="@string/dialog_teacher_text"
android:textSize="17sp" />
<TextView
android:id="@+id/teacher_dialog_text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="@string/grades_text"
android:textSize="12sp" />
<TextView
android:id="@+id/color_dialog_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="@string/dialog_color_text"
android:textSize="17sp" />
<TextView
android:id="@+id/color_dialog_text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="@string/grades_text"
android:textSize="12sp" />
<TextView
android:id="@+id/date_dialog_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="@string/dialog_date_text"
android:textSize="17sp" />
<TextView
android:id="@+id/date_dialog_text_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:text="@string/grades_text"
android:textSize="12sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="10dp"
android:layout_marginTop="19dp">
<TextView
android:id="@+id/OK_dialog"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_marginEnd="20dp"
android:layout_marginRight="20dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:clickable="true"
android:gravity="center"
android:text="@string/ok_text"
android:textSize="16sp" />
</RelativeLayout>
</LinearLayout>
</ScrollView>

View File

@ -1,25 +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:layout_marginBottom="2dp"
android:layout_marginLeft="1dp"
android:layout_marginRight="1dp"
android:orientation="vertical">
<ImageView
android:id="@+id/img_android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true" />
<TextView
android:id="@+id/tv_android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FFFFFF"
android:gravity="center"
android:lines="2"
android:textColor="#000000"
android:textStyle="bold" />
</LinearLayout>

View File

@ -0,0 +1,35 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/border"
android:foreground="?attr/selectableItemBackgroundBorderless">
<TextView
android:id="@+id/subject_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="15dp"
android:text="@string/app_name"
android:textSize="19sp" />
<ImageView
android:id="@+id/group_indicator_down"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
app:srcCompat="@drawable/ic_arrow_down" />
<ImageView
android:id="@+id/group_indicator_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:rotation="180"
app:srcCompat="@drawable/ic_arrow_down" />
</RelativeLayout>