1
1
<?xml version =" 1.0" encoding =" utf-8" ?>
2
- <androidx .constraintlayout.widget.ConstraintLayout xmlns : android =" http://schemas.android.com/apk/res/android"
2
+ <LinearLayout xmlns : android =" http://schemas.android.com/apk/res/android"
3
3
xmlns : app =" http://schemas.android.com/apk/res-auto"
4
4
xmlns : tools =" http://schemas.android.com/tools"
5
5
android : layout_width =" match_parent"
6
- android : layout_height =" match_parent" >
6
+ android : layout_height =" match_parent"
7
+ android : orientation =" vertical" >
7
8
8
9
<com .google.android.material.appbar.AppBarLayout
9
10
android : id =" @+id/appBar"
31
32
app : layout_constraintStart_toStartOf =" parent"
32
33
app : layout_constraintTop_toBottomOf =" @id/appBar" />
33
34
34
- <androidx .recyclerview.widget.RecyclerView
35
- android : id =" @+id/visitedStations"
35
+ <androidx .core.widget.NestedScrollView
36
36
android : layout_width =" match_parent"
37
- android : layout_height =" wrap_content"
38
- android : layout_marginStart =" @dimen/margin"
39
- android : layout_marginTop =" @dimen/big_margin"
40
- android : layout_marginEnd =" @dimen/margin"
41
- android : layout_marginBottom =" @dimen/big_margin"
42
- android : overScrollMode =" never"
43
- android : scrollbars =" none"
44
- app : layout_constraintTop_toBottomOf =" @id/appBar"
45
- tools : itemCount =" 3"
46
- tools : listitem =" @layout/item_visited_section" />
47
-
48
- <androidx .constraintlayout.widget.ConstraintLayout
49
- android : id =" @+id/syncInfoDisplay"
50
- android : layout_width =" 0dp"
51
- android : layout_height =" wrap_content"
52
- android : layout_marginStart =" @dimen/margin"
53
- android : layout_marginTop =" @dimen/big_margin"
54
- android : layout_marginEnd =" @dimen/margin"
55
- android : layout_marginBottom =" @dimen/big_margin"
56
- app : layout_constraintBottom_toBottomOf =" parent"
57
- app : layout_constraintEnd_toEndOf =" parent"
58
- app : layout_constraintStart_toStartOf =" parent"
59
- app : layout_constraintTop_toBottomOf =" @id/visitedStations"
60
- app : layout_constraintVertical_bias =" 1.0" >
61
-
62
- <ImageView
63
- android : id =" @+id/syncIcon"
64
- android : layout_width =" @dimen/medium_icon_size"
65
- android : layout_height =" @dimen/medium_icon_size"
66
- android : layout_marginEnd =" @dimen/small_margin"
67
- android : contentDescription =" @null"
68
- app : layout_constraintBottom_toBottomOf =" @id/syncInfo"
69
- app : layout_constraintEnd_toStartOf =" @id/syncInfo"
70
- app : layout_constraintHorizontal_chainStyle =" packed"
71
- app : layout_constraintStart_toStartOf =" parent"
72
- app : layout_constraintTop_toTopOf =" @id/syncInfo"
73
- app : layout_constraintVertical_bias =" 0"
74
- app : srcCompat =" @drawable/ic_sync_label_icon" />
75
-
76
- <TextView
77
- android : id =" @+id/syncInfo"
78
- style =" @style/Text.Label"
79
- android : layout_width =" 0dp"
80
- android : layout_height =" wrap_content"
81
- android : layout_marginTop =" @dimen/big_margin"
82
- android : paddingStart =" @dimen/small_margin"
83
- android : paddingEnd =" @dimen/small_margin"
84
- android : text =" @string/sync_info"
85
- app : layout_constraintBottom_toTopOf =" @id/syncButton"
86
- app : layout_constraintEnd_toEndOf =" parent"
87
- app : layout_constraintHorizontal_chainStyle =" packed"
88
- app : layout_constraintStart_toEndOf =" @id/syncIcon"
89
- app : layout_constraintTop_toTopOf =" parent" />
90
-
91
- <Button
92
- android : id =" @+id/syncButton"
93
- style =" @style/Button"
37
+ android : layout_height =" match_parent"
38
+ android : fillViewport =" true" >
39
+
40
+ <androidx .constraintlayout.widget.ConstraintLayout
94
41
android : layout_width =" match_parent"
95
- android : layout_height =" wrap_content"
96
- android : layout_marginTop =" @dimen/small_margin"
97
- android : text =" @string/sync_manual"
98
- app : layout_constraintBottom_toBottomOf =" parent"
99
- app : layout_constraintTop_toBottomOf =" @id/syncInfo" />
100
-
101
- <androidx .constraintlayout.widget.Group
102
- android : id =" @+id/syncGroup"
103
- android : layout_width =" 0dp"
104
- android : layout_height =" 0dp"
105
- android : visibility =" gone"
106
- app : constraint_referenced_ids =" syncButton,syncIcon,syncInfo"
107
- tools : layout_editor_absoluteX =" 16dp"
108
- tools : layout_editor_absoluteY =" 24dp"
109
- tools : visibility =" gone" />
110
-
111
- <ImageView
112
- android : id =" @+id/syncIconSuccess"
113
- android : layout_width =" @dimen/medium_icon_size"
114
- android : layout_height =" @dimen/medium_icon_size"
115
- android : layout_marginEnd =" @dimen/small_margin"
116
- android : contentDescription =" @null"
117
- app : layout_constraintBottom_toBottomOf =" @id/syncInfoSuccess"
118
- app : layout_constraintEnd_toStartOf =" @id/syncInfoSuccess"
119
- app : layout_constraintHorizontal_chainStyle =" packed"
120
- app : layout_constraintStart_toStartOf =" parent"
121
- app : layout_constraintTop_toTopOf =" @id/syncInfoSuccess"
122
- app : srcCompat =" @drawable/ic_synced" />
123
-
124
- <TextView
125
- android : id =" @+id/syncInfoSuccess"
126
- style =" @style/Text.Label"
127
- android : layout_width =" 0dp"
128
- android : layout_height =" wrap_content"
129
- android : layout_marginTop =" @dimen/big_margin"
130
- android : layout_marginBottom =" @dimen/big_margin"
131
- android : paddingStart =" @dimen/small_margin"
132
- android : paddingEnd =" @dimen/small_margin"
133
- android : text =" @string/sync_info_success"
134
- app : layout_constraintBottom_toBottomOf =" parent"
135
- app : layout_constraintEnd_toEndOf =" parent"
136
- app : layout_constraintHorizontal_chainStyle =" packed"
137
- app : layout_constraintStart_toEndOf =" @id/syncIconSuccess"
138
- app : layout_constraintTop_toTopOf =" parent" />
139
-
140
- <androidx .constraintlayout.widget.Group
141
- android : id =" @+id/syncSuccessGroup"
142
- android : layout_width =" 0dp"
143
- android : layout_height =" 0dp"
144
-
145
- app : constraint_referenced_ids =" syncIconSuccess,syncInfoSuccess"
146
- />
147
-
148
- </androidx .constraintlayout.widget.ConstraintLayout>
149
- </androidx .constraintlayout.widget.ConstraintLayout>
42
+ android : layout_height =" wrap_content" >
43
+
44
+ <androidx .recyclerview.widget.RecyclerView
45
+ android : id =" @+id/visitedStations"
46
+ android : layout_width =" match_parent"
47
+ android : layout_height =" wrap_content"
48
+ android : layout_marginStart =" @dimen/margin"
49
+ android : layout_marginTop =" @dimen/big_margin"
50
+ android : layout_marginEnd =" @dimen/margin"
51
+ android : layout_marginBottom =" @dimen/big_margin"
52
+ android : paddingBottom =" @dimen/small_margin"
53
+ android : overScrollMode =" never"
54
+ android : scrollbars =" none"
55
+ app : layout_constraintTop_toTopOf =" parent"
56
+ tools : itemCount =" 3"
57
+ tools : listitem =" @layout/item_visited_section" />
58
+
59
+ <androidx .constraintlayout.widget.ConstraintLayout
60
+ android : id =" @+id/syncInfoDisplay"
61
+ android : layout_width =" 0dp"
62
+ android : layout_height =" wrap_content"
63
+ android : layout_marginStart =" @dimen/margin"
64
+ android : layout_marginTop =" @dimen/big_margin"
65
+ android : layout_marginEnd =" @dimen/margin"
66
+ android : layout_marginBottom =" @dimen/big_margin"
67
+ app : layout_constraintBottom_toBottomOf =" parent"
68
+ app : layout_constraintEnd_toEndOf =" parent"
69
+ app : layout_constraintStart_toStartOf =" parent"
70
+ app : layout_constraintTop_toBottomOf =" @id/visitedStations"
71
+ app : layout_constraintVertical_bias =" 1.0" >
72
+
73
+ <ImageView
74
+ android : id =" @+id/syncIcon"
75
+ android : layout_width =" @dimen/medium_icon_size"
76
+ android : layout_height =" @dimen/medium_icon_size"
77
+ android : layout_marginEnd =" @dimen/small_margin"
78
+ android : contentDescription =" @null"
79
+ app : layout_constraintBottom_toBottomOf =" @id/syncInfo"
80
+ app : layout_constraintEnd_toStartOf =" @id/syncInfo"
81
+ app : layout_constraintHorizontal_chainStyle =" packed"
82
+ app : layout_constraintStart_toStartOf =" parent"
83
+ app : layout_constraintTop_toTopOf =" @id/syncInfo"
84
+ app : layout_constraintVertical_bias =" 0"
85
+ app : srcCompat =" @drawable/ic_sync_label_icon" />
86
+
87
+ <TextView
88
+ android : id =" @+id/syncInfo"
89
+ style =" @style/Text.Label"
90
+ android : layout_width =" 0dp"
91
+ android : layout_height =" wrap_content"
92
+ android : layout_marginTop =" @dimen/big_margin"
93
+ android : paddingStart =" @dimen/small_margin"
94
+ android : paddingEnd =" @dimen/small_margin"
95
+ android : text =" @string/sync_info"
96
+ app : layout_constraintBottom_toTopOf =" @id/syncButton"
97
+ app : layout_constraintEnd_toEndOf =" parent"
98
+ app : layout_constraintHorizontal_chainStyle =" packed"
99
+ app : layout_constraintStart_toEndOf =" @id/syncIcon"
100
+ app : layout_constraintTop_toTopOf =" parent" />
101
+
102
+ <Button
103
+ android : id =" @+id/syncButton"
104
+ style =" @style/Button"
105
+ android : layout_width =" match_parent"
106
+ android : layout_height =" wrap_content"
107
+ android : layout_marginTop =" @dimen/small_margin"
108
+ android : text =" @string/sync_manual"
109
+ app : layout_constraintBottom_toBottomOf =" parent"
110
+ app : layout_constraintTop_toBottomOf =" @id/syncInfo" />
111
+
112
+ <androidx .constraintlayout.widget.Group
113
+ android : id =" @+id/syncGroup"
114
+ android : layout_width =" 0dp"
115
+ android : layout_height =" 0dp"
116
+ android : visibility =" gone"
117
+ app : constraint_referenced_ids =" syncButton,syncIcon,syncInfo"
118
+ tools : layout_editor_absoluteX =" 16dp"
119
+ tools : layout_editor_absoluteY =" 24dp"
120
+ tools : visibility =" gone" />
121
+
122
+ <ImageView
123
+ android : id =" @+id/syncIconSuccess"
124
+ android : layout_width =" @dimen/medium_icon_size"
125
+ android : layout_height =" @dimen/medium_icon_size"
126
+ android : layout_marginEnd =" @dimen/small_margin"
127
+ android : contentDescription =" @null"
128
+ app : layout_constraintBottom_toBottomOf =" @id/syncInfoSuccess"
129
+ app : layout_constraintEnd_toStartOf =" @id/syncInfoSuccess"
130
+ app : layout_constraintHorizontal_chainStyle =" packed"
131
+ app : layout_constraintStart_toStartOf =" parent"
132
+ app : layout_constraintTop_toTopOf =" @id/syncInfoSuccess"
133
+ app : srcCompat =" @drawable/ic_synced" />
134
+
135
+ <TextView
136
+ android : id =" @+id/syncInfoSuccess"
137
+ style =" @style/Text.Label"
138
+ android : layout_width =" 0dp"
139
+ android : layout_height =" wrap_content"
140
+ android : layout_marginTop =" @dimen/big_margin"
141
+ android : layout_marginBottom =" @dimen/big_margin"
142
+ android : paddingStart =" @dimen/small_margin"
143
+ android : paddingEnd =" @dimen/small_margin"
144
+ android : text =" @string/sync_info_success"
145
+ app : layout_constraintBottom_toBottomOf =" parent"
146
+ app : layout_constraintEnd_toEndOf =" parent"
147
+ app : layout_constraintHorizontal_chainStyle =" packed"
148
+ app : layout_constraintStart_toEndOf =" @id/syncIconSuccess"
149
+ app : layout_constraintTop_toTopOf =" parent" />
150
+
151
+ <androidx .constraintlayout.widget.Group
152
+ android : id =" @+id/syncSuccessGroup"
153
+ android : layout_width =" 0dp"
154
+ android : layout_height =" 0dp"
155
+ app : constraint_referenced_ids =" syncIconSuccess,syncInfoSuccess" />
156
+
157
+ </androidx .constraintlayout.widget.ConstraintLayout>
158
+ </androidx .constraintlayout.widget.ConstraintLayout>
159
+ </androidx .core.widget.NestedScrollView>
160
+ </LinearLayout >
0 commit comments