Articles of kotlin android

kotlin-android null no se puede convertir a tipo no nulo kotlin.String

No puedo sincronizar mi proyecto porque esto: Caused by: kotlin.TypeCastException: null cannot be cast to non-null type kotlin.String at org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapperKt.loadKotlinVersionFromResource(KotlinPluginWrapper.kt:89) at org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapperKt.access$loadKotlinVersionFromResource(KotlinPluginWrapper.kt:1) at org.jetbrains.kotlin.gradle.plugin.KotlinBasePluginWrapper.<init>(KotlinPluginWrapper.kt:39) at org.jetbrains.kotlin.gradle.plugin.KotlinAndroidPluginWrapper.<init>(KotlinPluginWrapper.kt:70) at org.gradle.api.internal.DependencyInjectingInstantiator.newInstance(DependencyInjectingInstantiator.java:81) at org.gradle.api.internal.plugins.DefaultPluginManager.instantiatePlugin(DefaultPluginManager.java:72) … 126 more Esto sucedió después de actualizar el complemento de Kotlin a 1.1.61

No se pueden agregar los fragments usando la function de Extensión de Kotlin

Tengo una function de extensión de Kotlin para agregar un fragment que está en otro file de Kotlin fun Fragment.addFragment(tag: String?, id: Int, fragmentManager: FragmentManager) { // will take care of adding the fragment. val fragmentTransaction = fragmentManager.beginTransaction() fragmentTransaction.add(id, this, tag) fragmentTransaction.addToBackStack(tag) fragmentTransaction.commit() } Pero cada vez que uso esa function de extensión para agregar […]

Kotlin build no puede get classs creadas por SquidDatabase

En mi proyecto uso SquidDatabase en casi todas partes para acceder a la database. Quiero transformar mi proyecto en Kotlin, pero cuando construyo hay muchos errores de "Referencia no resuelta: DepartmentInfo". Esa class DepartmentInfo fue creada por SquidDatabase durante la construcción, así que creo que este problema es causado por la construcción de Kotlin antes […]

Android (Kotlin): sobrescribe el nombre para la input del logging de llamadas

Actualmente estoy intentando crear una aplicación, que puede iniciar una llamada desde una list de contactos extraídos de una API de reposo, usando: val callIntent = Intent(Intent.ACTION_CALL) callIntent.data = Uri.parse("tel:${entry.phoneNumber}") startActivity(callIntent) Dado que, que yo sepa, no es posible pasar ninguna información para ser utilizada para el logging de llamadas resultante (El 'historial de llamadas' […]

Configuración de oyentes de Android en Kotlin: uso del retorno en lambdas

Considera este código de escucha: expandable_list.setOnChildClickListener { expandableListView, view, groupPosition, childPosition, l -> Toast.makeText( applicationContext, listDataHeader[groupPosition] + " : " + listDataChild[listDataHeader[groupPosition]]!![childPosition], Toast.LENGTH_SHORT).show() return false} No funcionará, y recibo el post de error "return is not allowed here" IDE. He buscado un poco y resulta que los retornos explícitos no funcionan en lambdas, pero la […]

Smartcasting hacia y desde el tipo de plataforma en kotlin

Estoy usando kotlin para crear mi adaptador que amplía BaseAdapter en Android. a continuación está el código dentro del método getView override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View? { var binding : ImageBinding var conView = convertView if(conView == null){ binding = DataBindingUtil.inflate(LayoutInflater.from(parent?.context), R.layout.image, parent, false) conView = binding.root; conView.tag = binding }else […]

¿Por qué una reference no resuelta al intentar acceder a valores constantes?

La aplicación define constantes en un object singleton de Kotlin: @file:JvmName("APIConstants") package com.myapp.api object APIConstants { const val HTTP_RESPONSE_CODE_NOT_AUTHORIZED = 401 etc…. } Luego se usan en otra class: import com.myapp.api.APIConstants.HTTP_RESPONSE_CODE_NOT_AUTHORIZED etc … class API { private fun returnBadResponse(response: Response<*>, callback: ApiAuthListener<*>) { if (response.code() == HTTP_RESPONSE_CODE_NOT_AUTHORIZED) { callback.onBadAuthToken() } else { callback.onFailure(response.message(), getServerError(response)) } […]

No se puede acceder a val en Kotlin

Estoy creando una vista personalizada como se muestra a continuación. Pero cuando creo un val llamado paintObject y trato de usarlo más tarde, recibo el error "me esperaba la statement del miembro", es decir, no puedo usar ese valor declarado. class CustomView: View { constructor(context: Context?) : super(context) constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs) […]

Parse 2D Array en Kotlin

He creado una matriz 2D llamada squareData como se muestra a continuación: private lateinit var squareData: Array<Array<String>> squareData = Array(3, {Array(3, {""})}) Además, inicié esta matriz con algunos valores aleatorios. Ahora quiero search estos valores uno por uno. ¿Cómo puedo hacerlo usando for o forEachIndexed loop?

Error "reference no resuelta" en Android Kotlin

Tengo código: package com.example.admin.maytinh import android.support.v7.app.AppCompatActivity import android.os.Bundle import android.view.View import com.example.admin.maytinh.R.id.button import com.example.admin.maytinh.R.id.editText import com.example.admin.maytinh.R.id.editText2 import com.example.admin.maytinh.R.id.editText3 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) button.setOnClickListener(View.OnClickListener{xuly()}) } public fun xuly(){ val a:Int = editText.text.ToString().ToInt() val b:Int = editText2.text.ToString().ToInt() val c:Int = a + b editText3.text = c.ToString() } } Cuando […]