Falta el constructor para DialogPreference

Estoy en el process de convertir un proyecto en Kotlin. Cuando convertí las Preferences de Diálogo, la aplicación se bloqueó con un "no tal método", aparentemente falta el constructor. Este es el post de error:

05-26 20:13:32.799 6019 6019 E AndroidRuntime: Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface android.util.AttributeSet] 05-26 20:13:32.799 6019 6019 E AndroidRuntime: at java.lang.Class.getConstructor0(Class.java:2204) 05-26 20:13:32.799 6019 6019 E AndroidRuntime: at java.lang.Class.getConstructor(Class.java:1683) 05-26 20:13:32.799 6019 6019 E AndroidRuntime: at android.preference.GenericInflater.createItem(GenericInflater.java:378) 

La class tiene el constructor de 2 arguments del que el post de error se queja:

 class FilterPreferenceFragment(context: Context, attrs: AttributeSet?) : BaseDialogPreference(context, attrs) { /* */ } 

Y la class base:

 abstract class BaseDialogPreference(context: Context, attrs: AttributeSet?) : DialogPreference(context, attrs) { /* */ } 

¿Alguna sugerencia?

Editar:

en caso de que sea útil, aquí está el bytecode generado por el comstackdor de Kotlin:

  // access flags 0x1 public <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V @Lorg/jetbrains/annotations/NotNull;() // invisible, parameter 0 @Lorg/jetbrains/annotations/Nullable;() // invisible, parameter 1 L0 ALOAD 1 LDC "context" INVOKESTATIC kotlin/jvm/internal/Intrinsics.checkParameterIsNotNull (Ljava/lang/Object;Ljava/lang/String;)V L1 LINENUMBER 12 L1 ALOAD 0 ALOAD 1 ALOAD 2 L2 LINENUMBER 13 L2 INVOKESPECIAL android/preference/DialogPreference.<init> (Landroid/content/Context;Landroid/util/AttributeSet;)V RETURN L3 LOCALVARIABLE this Lcom/example/exampleapp/app/preference/BaseDialogPreference; L0 L3 0 LOCALVARIABLE context Landroid/content/Context; L0 L3 1 LOCALVARIABLE attrs Landroid/util/AttributeSet; L0 L3 2 MAXSTACK = 3 MAXLOCALS = 3 @Lkotlin/Metadata;(mv={1, 1, 6}, bv={1, 0, 1}, k=1, d1={"\u0000$\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\u0008&\u0018\u00002\u00020\u0001B\u0017\u0012\u0006\u0010\u0002\u001a\u00020\u0003\u0012\u0008\u0010\u0004\u001a\u0004\u0018\u00010\u0005\u00a2\u0006\u0002\u0010\u0006J\u0010\u0010\u0007\u001a\u00020\u00082\u0006\u0010\u0009\u001a\u00020\nH\u0014\u00a8\u0006\u000b"}, d2={"Lcom/example/exampleapp/app/preference/BaseDialogPreference;", "Landroid/preference/DialogPreference;", "context", "Landroid/content/Context;", "attrs", "Landroid/util/AttributeSet;", "(Landroid/content/Context;Landroid/util/AttributeSet;)V", "onBindView", "", "view", "Landroid/view/View;", "production sources for module ExampleApp"}) // compiled from: BaseDialogPreference.kt 

Resulta que estaba buscando en la class equivocada. El error vino de esta otra preference:

 class BaseCheckBoxPreference(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : CheckBoxPreference(context, attrs, defStyleAttr) { /* */ } 

Para resolver el locking tuve que eliminar el tercer argumento del constructor:

 class BaseCheckBoxPreference(context: Context, attrs: AttributeSet? = null) : CheckBoxPreference(context, attrs) { /* */ } 

Alternativamente, podemos definir un constructor secundario que solo tome 2 arguments, pero para mi caso de uso solo necesité uno con 2 arguments. El constructor secundario sería

 class BaseCheckBoxPreference(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : CheckBoxPreference(context, attrs, defStyleAttr) { constructor(context: Context, attrs: AttributeSet? = null) : this(context, attrs, 0) /* */ } 
  • ¿Cómo comparar dos matrices en Kotlin?
  • Inicie la actividad de superposition sin mostrar el rest de la aplicación
  • La aplicación del complemento Realm en el proyecto Kotlin produce un error de compilation
  • Hubo un error al procesar los informes de cobertura en codecov
  • Resolución de errores de sustitución accidental en Kotlin
  • spring.config.location no funciona en el arranque de spring 2.0.0 M6
  • especifique la class Kotlin como el punto de input de la class principal en MANIFEST.MF?
  • Se unió a w / Spring Data y QueryDSL para orderar los resultados
  • Instant no se puede serializar al formatting apropiado incluso con jackson-datatype-jsr310
  • Kotlin constructor secundario
  • ¿Hay alguna manera de tener un file privado constante en Kotlin?