Я портирую Android-приложение с java на Kotlin. У меня есть загрузчик курсора для заполнения RecyclerView. В Java все нормально, но когда я пытаюсь «перевести» код с java на Kotlin, я получил сообщение от студии Android, которое вы можете видеть на изображении ниже.
Мой код в java:
@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args){
return new CursorLoader(getContext(), Contrato.URI_CONTENIDO_BASE, null,null,null,null);
}
@Override
public void onLoadFinished(Loader<Cursor> loader, Cursor data){
adaptador.swapCursor(data);
layoutManager.scrollToPosition(adaptador.getItemCount() -1);
}
@Override
public void onLoaderReset(Loader<Cursor> loader){
}
А код в Котлине:
override fun onCreateLoader(id: Int, args: Bundle?): Loader<Cursor> {
return CursorLoader(context,MMDContract.columnas.CONTENT_BASE_URI, null, null, null, null)
}
override fun onLoadFinished(loader: Loader<Cursor>?, data: Cursor?) {
adapter.swapCursor(data)
}
override fun onLoaderReset(loader: Loader<Cursor>?) {
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}
Я не нашел официальную документацию на Kotlin, только на Java. https://developer.android.com/guide/components/loaders
Есть идеи, как я могу это решить?
Изменять
return CursorLoader(context,
MMDContract.columnas.CONTENT_BASE_URI, null, null, null, null)
в
return CursorLoader(context,
MMDContract.columnas.CONTENT_BASE_URI, null, null, null, null) as Loader<Cursor>
должен решить эту проблему.
Эта ошибка выглядит как ошибка IDE. Если вы всегда можете увидеть одно и то же сообщение об ошибке, вы можете сообщить об этом на https://youtrack.jetbrains.com/.