Pārlūkot izejas kodu

Made list dialogs use CharSequence items instead of String, resolves #1867

Yuri Denison 5 gadi atpakaļ
vecāks
revīzija
755fedd6b6

+ 3 - 3
core/src/main/java/com/afollestad/materialdialogs/internal/list/MultiChoiceDialogAdapter.kt

@@ -67,13 +67,13 @@ internal class MultiChoiceViewHolder(
  */
 internal class MultiChoiceDialogAdapter(
   private var dialog: MaterialDialog,
-  internal var items: List<String>,
+  internal var items: List<CharSequence>,
   disabledItems: IntArray?,
   initialSelection: IntArray,
   private val waitForActionButton: Boolean,
   private val allowEmptySelection: Boolean,
   internal var selection: MultiChoiceListener
-) : RecyclerView.Adapter<MultiChoiceViewHolder>(), DialogAdapter<String, MultiChoiceListener> {
+) : RecyclerView.Adapter<MultiChoiceViewHolder>(), DialogAdapter<CharSequence, MultiChoiceListener> {
 
   private var currentSelection: IntArray = initialSelection
     set(value) {
@@ -184,7 +184,7 @@ internal class MultiChoiceDialogAdapter(
   }
 
   override fun replaceItems(
-    items: List<String>,
+    items: List<CharSequence>,
     listener: MultiChoiceListener
   ) {
     this.items = items

+ 3 - 3
core/src/main/java/com/afollestad/materialdialogs/internal/list/PlainListDialogAdapter.kt

@@ -53,11 +53,11 @@ internal class PlainListViewHolder(
  */
 internal class PlainListDialogAdapter(
   private var dialog: MaterialDialog,
-  internal var items: List<String>,
+  internal var items: List<CharSequence>,
   disabledItems: IntArray?,
   private var waitForPositiveButton: Boolean,
   internal var selection: ItemListener
-) : RecyclerView.Adapter<PlainListViewHolder>(), DialogAdapter<String, ItemListener> {
+) : RecyclerView.Adapter<PlainListViewHolder>(), DialogAdapter<CharSequence, ItemListener> {
 
   private var disabledIndices: IntArray = disabledItems ?: IntArray(0)
 
@@ -122,7 +122,7 @@ internal class PlainListDialogAdapter(
   }
 
   override fun replaceItems(
-    items: List<String>,
+    items: List<CharSequence>,
     listener: ItemListener
   ) {
     this.items = items

+ 3 - 3
core/src/main/java/com/afollestad/materialdialogs/internal/list/SingleChoiceDialogAdapter.kt

@@ -65,12 +65,12 @@ internal class SingleChoiceViewHolder(
  */
 internal class SingleChoiceDialogAdapter(
   private var dialog: MaterialDialog,
-  internal var items: List<String>,
+  internal var items: List<CharSequence>,
   disabledItems: IntArray?,
   initialSelection: Int,
   private val waitForActionButton: Boolean,
   internal var selection: SingleChoiceListener
-) : RecyclerView.Adapter<SingleChoiceViewHolder>(), DialogAdapter<String, SingleChoiceListener> {
+) : RecyclerView.Adapter<SingleChoiceViewHolder>(), DialogAdapter<CharSequence, SingleChoiceListener> {
 
   private var currentSelection: Int = initialSelection
     set(value) {
@@ -162,7 +162,7 @@ internal class SingleChoiceDialogAdapter(
   }
 
   override fun replaceItems(
-    items: List<String>,
+    items: List<CharSequence>,
     listener: SingleChoiceListener
   ) {
     this.items = items

+ 2 - 2
core/src/main/java/com/afollestad/materialdialogs/list/DialogListExt.kt

@@ -80,7 +80,7 @@ fun MaterialDialog.customListAdapter(
  */
 @CheckResult fun MaterialDialog.listItems(
   @ArrayRes res: Int? = null,
-  items: List<String>? = null,
+  items: List<CharSequence>? = null,
   disabledIndices: IntArray? = null,
   waitForPositiveButton: Boolean = true,
   selection: ItemListener = null
@@ -116,7 +116,7 @@ fun MaterialDialog.customListAdapter(
  */
 fun MaterialDialog.updateListItems(
   @ArrayRes res: Int? = null,
-  items: List<String>? = null,
+  items: List<CharSequence>? = null,
   disabledIndices: IntArray? = null,
   selection: ItemListener = null
 ): MaterialDialog {

+ 2 - 2
core/src/main/java/com/afollestad/materialdialogs/list/DialogMultiChoiceExt.kt

@@ -40,7 +40,7 @@ import com.afollestad.materialdialogs.utils.MDUtil.getStringArray
  */
 @CheckResult fun MaterialDialog.listItemsMultiChoice(
   @ArrayRes res: Int? = null,
-  items: List<String>? = null,
+  items: List<CharSequence>? = null,
   disabledIndices: IntArray? = null,
   initialSelection: IntArray = IntArray(0),
   waitForPositiveButton: Boolean = true,
@@ -84,7 +84,7 @@ import com.afollestad.materialdialogs.utils.MDUtil.getStringArray
  */
 fun MaterialDialog.updateListItemsMultiChoice(
   @ArrayRes res: Int? = null,
-  items: List<String>? = null,
+  items: List<CharSequence>? = null,
   disabledIndices: IntArray? = null,
   selection: MultiChoiceListener = null
 ): MaterialDialog {

+ 2 - 2
core/src/main/java/com/afollestad/materialdialogs/list/DialogSingleChoiceExt.kt

@@ -38,7 +38,7 @@ import com.afollestad.materialdialogs.utils.MDUtil.getStringArray
  */
 @CheckResult fun MaterialDialog.listItemsSingleChoice(
   @ArrayRes res: Int? = null,
-  items: List<String>? = null,
+  items: List<CharSequence>? = null,
   disabledIndices: IntArray? = null,
   initialSelection: Int = -1,
   waitForPositiveButton: Boolean = true,
@@ -84,7 +84,7 @@ import com.afollestad.materialdialogs.utils.MDUtil.getStringArray
  */
 fun MaterialDialog.updateListItemsSingleChoice(
   @ArrayRes res: Int? = null,
-  items: List<String>? = null,
+  items: List<CharSequence>? = null,
   disabledIndices: IntArray? = null,
   selection: SingleChoiceListener = null
 ): MaterialDialog {

+ 3 - 3
core/src/main/java/com/afollestad/materialdialogs/list/ListCallbacks.kt

@@ -18,10 +18,10 @@ package com.afollestad.materialdialogs.list
 import com.afollestad.materialdialogs.MaterialDialog
 
 typealias ItemListener =
-    ((dialog: MaterialDialog, index: Int, text: String) -> Unit)?
+    ((dialog: MaterialDialog, index: Int, text: CharSequence) -> Unit)?
 
 typealias SingleChoiceListener =
-    ((dialog: MaterialDialog, index: Int, text: String) -> Unit)?
+    ((dialog: MaterialDialog, index: Int, text: CharSequence) -> Unit)?
 
 typealias MultiChoiceListener =
-    ((dialog: MaterialDialog, indices: IntArray, items: List<String>) -> Unit)?
+    ((dialog: MaterialDialog, indices: IntArray, items: List<CharSequence>) -> Unit)?