Better item list view implementation

This commit is contained in:
J-Jamet
2021-08-19 17:11:42 +02:00
parent 25646fbad7
commit 925509e5a0
5 changed files with 66 additions and 56 deletions

View File

@@ -112,8 +112,8 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="start|center_vertical"
android:layout_marginLeft="@dimen/image_list_margin"
android:layout_marginStart="@dimen/image_list_margin"
android:layout_marginLeft="@dimen/image_list_margin_vertical"
android:layout_marginStart="@dimen/image_list_margin_vertical"
android:layout_weight="1"
android:text="@string/root"
android:maxLines="2"

View File

@@ -26,6 +26,7 @@
android:id="@+id/nodes_list"
android:contentDescription="@string/content_description_node_children"
android:scrollbars="vertical"
android:scrollbarStyle="insideOverlay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="?android:attr/windowBackground"

View File

@@ -38,12 +38,12 @@
android:id="@+id/node_icon"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:layout_marginLeft="@dimen/image_list_margin"
android:layout_marginStart="@dimen/image_list_margin"
android:layout_marginRight="@dimen/image_list_margin"
android:layout_marginEnd="@dimen/image_list_margin"
android:layout_marginTop="@dimen/image_list_margin_horizontal"
android:layout_marginBottom="@dimen/image_list_margin_horizontal"
android:layout_marginLeft="@dimen/image_list_margin_vertical"
android:layout_marginStart="@dimen/image_list_margin_vertical"
android:layout_marginRight="@dimen/image_list_margin_vertical"
android:layout_marginEnd="@dimen/image_list_margin_vertical"
android:scaleType="fitXY"
android:src="@drawable/ic_blank_32dp"
app:layout_constraintTop_toTopOf="parent"
@@ -56,10 +56,10 @@
android:orientation="vertical"
android:paddingTop="2dp"
android:paddingBottom="4dp"
android:layout_marginLeft="@dimen/image_list_margin"
android:layout_marginStart="@dimen/image_list_margin"
android:layout_marginRight="@dimen/image_list_margin"
android:layout_marginEnd="@dimen/image_list_margin"
android:layout_marginLeft="@dimen/image_list_margin_vertical"
android:layout_marginStart="@dimen/image_list_margin_vertical"
android:layout_marginRight="@dimen/image_list_margin_vertical"
android:layout_marginEnd="@dimen/image_list_margin_vertical"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@+id/node_icon"
@@ -88,10 +88,10 @@
android:id="@+id/node_attachment_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/image_list_margin"
android:layout_marginStart="@dimen/image_list_margin"
android:layout_marginRight="@dimen/image_list_margin"
android:layout_marginEnd="@dimen/image_list_margin"
android:layout_marginLeft="@dimen/image_list_margin_vertical"
android:layout_marginStart="@dimen/image_list_margin_vertical"
android:layout_marginEnd="12dp"
android:layout_marginRight="12dp"
android:src="@drawable/ic_attach_file_white_24dp"
style="@style/KeepassDXStyle.TextAppearance.Entry.Icon"
app:layout_constraintTop_toTopOf="parent"

View File

@@ -34,72 +34,80 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:background="?android:attr/selectableItemBackground" >
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/node_image_identifier"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_arrow_right_white_24dp"
android:layout_marginLeft="4dp"
android:layout_marginStart="4dp"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/node_icon"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:layout_marginLeft="@dimen/image_list_margin"
android:layout_marginStart="@dimen/image_list_margin"
android:layout_marginRight="@dimen/image_list_margin"
android:layout_marginEnd="@dimen/image_list_margin"
android:src="@drawable/ic_blank_32dp"
android:scaleType="fitXY"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/node_image_identifier"
android:layout_toEndOf="@+id/node_image_identifier" />
android:layout_marginStart="@dimen/image_list_margin_vertical"
android:layout_marginLeft="@dimen/image_list_margin_vertical"
android:layout_marginTop="@dimen/image_list_margin_horizontal"
android:layout_marginEnd="@dimen/image_list_margin_vertical"
android:layout_marginRight="@dimen/image_list_margin_vertical"
android:layout_marginBottom="@dimen/image_list_margin_horizontal"
android:scaleType="fitXY"
android:src="@drawable/ic_blank_32dp" />
<TextView
android:id="@+id/node_child_numbers"
style="@style/KeepassDXStyle.TextAppearance.Info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="3"
android:layout_marginEnd="-18dp"
android:layout_marginRight="-18dp"
style="@style/KeepassDXStyle.TextAppearance.Info"
android:layout_toLeftOf="@+id/node_icon"
android:layout_alignTop="@+id/node_icon"
android:layout_marginEnd="-32dp"
android:layout_marginRight="-32dp"
android:layout_toStartOf="@+id/node_icon"
android:layout_alignTop="@+id/node_icon" />
android:layout_toLeftOf="@+id/node_icon"
tools:text="3" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/node_icon"
android:layout_toRightOf="@+id/node_icon"
android:layout_toStartOf="@+id/node_image_identifier"
android:layout_toLeftOf="@+id/node_image_identifier"
android:orientation="vertical"
android:paddingTop="2dp"
android:paddingBottom="4dp"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_toRightOf="@+id/node_icon"
android:layout_toEndOf="@+id/node_icon">
android:paddingBottom="4dp">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/node_text"
style="@style/KeepassDXStyle.TextAppearance.Group.Title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
tools:text="Node Title"
android:maxLines="2"
android:ellipsize="end"
style="@style/KeepassDXStyle.TextAppearance.Group.Title" />
android:gravity="center_vertical"
android:maxLines="2"
tools:text="Node Title" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/node_subtext"
style="@style/KeepassDXStyle.TextAppearance.Group.SubTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
tools:text="Node SubTitle"
android:layout_marginTop="-4dp"
android:gravity="center_vertical"
android:lines="1"
android:singleLine="true"
style="@style/KeepassDXStyle.TextAppearance.Group.SubTitle" />
tools:text="Node SubTitle" />
</LinearLayout>
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/node_image_identifier"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginStart="@dimen/image_list_margin_vertical"
android:layout_marginLeft="@dimen/image_list_margin_vertical"
android:layout_marginEnd="12dp"
android:layout_marginRight="12dp"
android:src="@drawable/ic_arrow_right_white_24dp" />
</RelativeLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -20,7 +20,8 @@
<resources>
<dimen name="default_margin">18dp</dimen>
<dimen name="image_button_margin">8dp</dimen>
<dimen name="image_list_margin">12dp</dimen>
<dimen name="image_list_margin_vertical">22dp</dimen>
<dimen name="image_list_margin_horizontal">8dp</dimen>
<dimen name="image_preview_height">144dp</dimen>
<dimen name="button_margin">6dp</dimen>
<dimen name="card_view_margin_horizontal">10dp</dimen>