CultureQuestORG/SDP2023

View on GitHub
app/src/main/res/layout/fragment_leaderboard.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/background"
    android:id="@+id/leaderboardFragment"
    tools:context=".ui.leaderboard.LeaderboardFragment"
    tools:visibility="visible">

    <TextView
        android:id="@+id/title_leaderboard"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="43dp"
        android:layout_marginTop="60dp"
        android:paddingHorizontal="7dp"
        android:fontFamily="@font/poppins_bold"
        android:text="@string/title_leaderboard"
        android:textColor="@color/colorPrimary"
        android:textSize="28sp"
        android:textStyle="bold"
        android:shadowColor="#26000000"
        android:shadowDx="0"
        android:shadowDy="4"
        android:shadowRadius="20"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/current_user_relative_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/title_leaderboard">

        <de.hdodenhof.circleimageview.CircleImageView
            android:id="@+id/current_user_profile_picture"
            android:layout_width="110dp"
            android:layout_height="110dp"
            android:layout_centerInParent="true"
            android:src="@drawable/basic_profile_picture"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <TextView
            android:id="@+id/current_username"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:layout_below="@+id/current_user_profile_picture"
            android:layout_centerHorizontal="true"
            android:fontFamily="@font/poppins_medium"
            android:textAlignment="center"
            android:textColor="@color/black"
            android:textSize="23sp"
            app:layout_constraintEnd_toEndOf="@+id/current_user_profile_picture"
            app:layout_constraintStart_toStartOf="@+id/current_user_profile_picture"
            app:layout_constraintTop_toBottomOf="@id/current_user_profile_picture" />

        <ImageView
            android:id="@+id/trophy_icon"
            android:layout_width="60dp"
            android:layout_height="60dp"
            android:layout_alignParentStart="true"
            android:layout_centerVertical="true"
            android:layout_marginStart="20dp"
            android:src="@drawable/trophee"
            app:layout_constraintBottom_toBottomOf="@+id/current_user_profile_picture"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="@+id/current_user_profile_picture" />

        <TextView
            android:id="@+id/current_user_score"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/trophy_icon"
            android:layout_alignStart="@+id/trophy_icon"
            android:fontFamily="@font/poppins_semibold"
            android:textAlignment="center"
            android:textColor="@color/black"
            android:textSize="23sp"
            app:layout_constraintEnd_toEndOf="@+id/trophy_icon"
            app:layout_constraintStart_toStartOf="@+id/trophy_icon"
            app:layout_constraintTop_toBottomOf="@+id/trophy_icon" />

        <ImageView
            android:id="@+id/leaderboard_icon"
            android:layout_width="60dp"
            android:layout_height="60dp"
            android:layout_alignParentEnd="true"
            android:layout_centerVertical="true"
            android:layout_marginEnd="20dp"
            android:src="@drawable/leaderboard_icon_unsel"
            app:layout_constraintBottom_toBottomOf="@id/current_user_profile_picture"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toTopOf="@+id/current_user_profile_picture" />

        <TextView
            android:id="@+id/current_user_rank"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/leaderboard_icon"
            android:layout_alignStart="@+id/leaderboard_icon"
            android:fontFamily="@font/poppins_semibold"
            android:textAlignment="center"
            android:textColor="@color/black"
            android:textSize="23sp"
            app:layout_constraintEnd_toEndOf="@+id/leaderboard_icon"
            app:layout_constraintStart_toStartOf="@+id/leaderboard_icon"
            app:layout_constraintTop_toBottomOf="@+id/leaderboard_icon" />

    </androidx.constraintlayout.widget.ConstraintLayout>

    <View
        android:id="@+id/horizontal_bar"
        android:layout_width="350dp"
        android:layout_height="2dp"
        android:layout_marginTop="8dp"
        android:background="@color/colorTertiary"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.491"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/current_user_relative_layout" />

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/global_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/globalLeaderboardButton"
        android:layout_marginBottom="80dp"
        app:layout_constraintBottom_toBottomOf="parent"
        tools:layout_editor_absoluteY="327dp" />

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/friends_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="0dp"

        android:visibility="invisible"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/globalLeaderboardButton"
        android:layout_marginBottom="80dp"
        app:layout_constraintBottom_toBottomOf="parent"/>

    <RadioButton
        android:id="@+id/globalLeaderboardButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="80dp"
        android:buttonTint="@color/colorTertiary"
        android:textColor="@color/black"
        android:checked="true"
        android:text="Global"
        app:layout_constraintEnd_toStartOf="@+id/friendsLeaderboardButton"
        app:layout_constraintHorizontal_bias="0.324"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/horizontal_bar" />

    <RadioButton
        android:id="@+id/friendsLeaderboardButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="104dp"
        android:buttonTint="@color/colorTertiary"
        android:text="Friends"
        android:textColor="@color/black"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/horizontal_bar" />


</androidx.constraintlayout.widget.ConstraintLayout>