show a couple extra fields at the recordings

This commit is contained in:
tibbi
2020-03-31 23:30:56 +02:00
parent 95a0630688
commit 2d6fce812e
5 changed files with 80 additions and 14 deletions

View File

@ -3,7 +3,11 @@ package com.simplemobiletools.voicerecorder.adapters
import android.view.Menu
import android.view.View
import android.view.ViewGroup
import android.widget.TextView
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.formatDate
import com.simplemobiletools.commons.extensions.formatSize
import com.simplemobiletools.commons.extensions.getFormattedDuration
import com.simplemobiletools.commons.views.FastScroller
import com.simplemobiletools.commons.views.MyRecyclerView
import com.simplemobiletools.voicerecorder.R
@ -53,7 +57,14 @@ class RecordingsAdapter(activity: SimpleActivity, var recordings: ArrayList<Reco
view.apply {
recording_frame?.isSelected = selectedKeys.contains(recording.id)
recording_title.text = recording.title
recording_title.setTextColor(textColor)
recording_date.text = recording.timestamp.formatDate(context)
recording_duration.text = recording.duration.getFormattedDuration()
recording_size.text = recording.size.formatSize()
arrayListOf<TextView>(recording_title, recording_date, recording_duration, recording_size).forEach {
it.setTextColor(textColor)
}
}
}
}

View File

@ -6,6 +6,7 @@ import android.database.Cursor
import android.provider.MediaStore
import android.util.AttributeSet
import com.simplemobiletools.commons.extensions.getIntValue
import com.simplemobiletools.commons.extensions.getLongValue
import com.simplemobiletools.commons.extensions.getStringValue
import com.simplemobiletools.commons.extensions.showErrorToast
import com.simplemobiletools.voicerecorder.activities.SimpleActivity
@ -44,8 +45,11 @@ class PlayerFragment(context: Context, attributeSet: AttributeSet) : MyViewPager
val uri = MediaStore.Audio.Media.getContentUri(MediaStore.VOLUME_EXTERNAL_PRIMARY)
val projection = arrayOf(
MediaStore.Audio.Media._ID,
MediaStore.Audio.Media.TITLE,
MediaStore.Audio.Media._ID
MediaStore.Audio.Media.DATE_ADDED,
MediaStore.Audio.Media.DURATION,
MediaStore.Audio.Media.SIZE
)
val selection = "${MediaStore.Audio.Media.OWNER_PACKAGE_NAME} = ?"
@ -57,9 +61,13 @@ class PlayerFragment(context: Context, attributeSet: AttributeSet) : MyViewPager
cursor = context.contentResolver.query(uri, projection, selection, selectionArgs, sorting)
if (cursor?.moveToFirst() == true) {
do {
val title = cursor.getStringValue(MediaStore.Audio.Media.TITLE)
val id = cursor.getIntValue(MediaStore.Audio.Media._ID)
val recording = Recording(id, title, "")
val title = cursor.getStringValue(MediaStore.Audio.Media.TITLE)
val path = ""
val timestamp = cursor.getIntValue(MediaStore.Audio.Media.DATE_ADDED)
val duration = cursor.getLongValue(MediaStore.Audio.Media.DURATION) / 1000
val size = cursor.getIntValue(MediaStore.Audio.Media.SIZE)
val recording = Recording(id, title, "", timestamp, duration.toInt(), size)
recordings.add(recording)
} while (cursor.moveToNext())
}

View File

@ -1,3 +1,3 @@
package com.simplemobiletools.voicerecorder.models
data class Recording(val id: Int, val title: String, val path: String)
data class Recording(val id: Int, val title: String, val path: String, val timestamp: Int, val duration: Int, val size: Int)