Skip to content

Commit 933aa1b

Browse files
committed
Add random button
1 parent 136995c commit 933aa1b

File tree

3 files changed

+33
-10
lines changed

3 files changed

+33
-10
lines changed

android/app/src/main/java/com/example/euphonia/ui/MusicFragment.kt

+11-7
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import android.text.Editable
1212
import android.text.TextWatcher
1313
import android.widget.AdapterView
1414
import android.widget.ArrayAdapter
15+
import android.widget.Button
1516
import android.widget.EditText
1617
import android.widget.ListView
1718
import androidx.activity.OnBackPressedCallback
@@ -81,6 +82,8 @@ class MusicFragment : Fragment() {
8182
}
8283
}
8384

85+
view.findViewById<Button>(R.id.random).setOnClickListener { onRandom() }
86+
8487
updateList()
8588

8689
return view
@@ -93,15 +96,16 @@ class MusicFragment : Fragment() {
9396
lateinit var searchBar: EditText
9497
var searchFilter: String = ""
9598

96-
/*fun onRandom(v: View) {
97-
val filteredData = displayedData.filter { currentPlaylist == null || it.playlist == currentPlaylist }
98-
val selectedMusics = filteredData.map { songToItem(data, it) }.shuffled().toMutableList()
99+
fun onRandom() {
100+
val filteredData = getCurrentMusics()
101+
102+
val selectedMusics = filteredData.shuffled().map { songToItem(pView.data, it) }.toMutableList()
99103

100-
controllerFuture.get().setMediaItems(selectedMusics)
104+
pView.controllerFuture!!.get().setMediaItems(selectedMusics)
101105

102-
controllerFuture.get().prepare()
103-
controllerFuture.get().play()
104-
}*/
106+
pView.controllerFuture!!.get().prepare()
107+
pView.controllerFuture!!.get().play()
108+
}
105109

106110
fun onRandomFromSong(position: Int) {
107111
val filteredData = getCurrentMusics()

android/app/src/main/res/layout/fragment_music.xml

+21-2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,16 @@
66
android:layout_height="match_parent"
77
tools:context=".ui.MusicFragment">
88

9+
<Button
10+
android:id="@+id/random"
11+
android:layout_width="wrap_content"
12+
android:layout_height="wrap_content"
13+
android:text="@string/sort_random"
14+
app:layout_constraintBottom_toTopOf="@+id/mainGuideline"
15+
app:layout_constraintEnd_toEndOf="parent"
16+
app:layout_constraintStart_toStartOf="parent"
17+
app:layout_constraintTop_toTopOf="@+id/guideline" />
18+
919
<EditText
1020
android:id="@+id/searchBar"
1121
android:layout_width="wrap_content"
@@ -15,7 +25,7 @@
1525
android:imeOptions="actionDone"
1626
android:inputType="text"
1727
android:minHeight="48dp"
18-
app:layout_constraintBottom_toTopOf="@+id/mainGuideline"
28+
app:layout_constraintBottom_toTopOf="@+id/guideline"
1929
app:layout_constraintEnd_toEndOf="parent"
2030
app:layout_constraintStart_toStartOf="parent"
2131
app:layout_constraintTop_toTopOf="parent" />
@@ -27,6 +37,13 @@
2737
android:orientation="horizontal"
2838
app:layout_constraintGuide_percent=".2" />
2939

40+
<androidx.constraintlayout.widget.Guideline
41+
android:id="@+id/guideline"
42+
android:layout_width="wrap_content"
43+
android:layout_height="wrap_content"
44+
android:orientation="horizontal"
45+
app:layout_constraintGuide_percent=".1" />
46+
3047
<ListView
3148
android:id="@+id/musicData"
3249
android:layout_width="0dp"
@@ -35,6 +52,8 @@
3552
app:layout_constraintBottom_toBottomOf="parent"
3653
app:layout_constraintEnd_toEndOf="parent"
3754
app:layout_constraintStart_toStartOf="parent"
38-
app:layout_constraintTop_toTopOf="@+id/mainGuideline" />
55+
app:layout_constraintTop_toTopOf="@+id/mainGuideline" >
56+
57+
</ListView>
3958

4059
</androidx.constraintlayout.widget.ConstraintLayout>

android/app/src/main/res/menu/bottom_nav_menu.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<item
1010
android:id="@+id/navigation_music"
1111
android:icon="@drawable/baseline_music_note_24"
12-
android:title="@string/title_music" />
12+
android:title="@string/title_music"/>
1313

1414
<item
1515
android:id="@+id/navigation_settings"

0 commit comments

Comments
 (0)