Articles of lambda

Tipo de function de Kotlin en su lugar interfaz funcional lambda

Estoy luchando en kotlin para get el lado opuesto de la interfaz funcional en Java. Tengo el siguiente problema. class ResultReceiverTest(handler : Handler) : ResultReceiver(handler) { fun onResult(result : (resultCode : Int, resultData: Bundle) -> Unit){ // result() how to receive values from onReceiveResult() method? } override fun onReceiveResult(resultCode: Int, resultData: Bundle){ // how to […]

Kotlin, tabla / matriz basada en inputs con campos dynamics

Estoy haciendo un puerto kotlin de g-truc gli y en realidad estoy considerando un ligero cambio de layout. Gli usa una representación interna de formatting de textura, types, swizzles, etc. ( gli::format y así sucesivamente). En esta testing , instancia la estructura GL, pasando el perfil y luego lee el formatting gli traducido: gli::gl GL(gli::gl::PROFILE_KTX); […]

Funciones de Lambda con comodines en Kotlin

Estaba mirando los ejemplos proporcionados por Google y encontré esta línea private final ArrayMap<Class, Callable<? extends ViewModel>> creators; Tengo problemas para averiguar cómo convertir ese Callable<? extends ViewModel> Callable<? extends ViewModel> en una lambda en Kotlin ¿Cómo voy a hacer esto? EDITAR: class ViewModelFactory(appComponent: AppComponent) : ViewModelProvider.Factory { private val creators: ArrayMap<Class<*>, () -> ViewModel> […]

¿Pasar lambdas a Observable.subscribe en kotlin dará como resultado pérdidas de memory?

Vea el siguiente código de kotlin: class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { val disposable = Observable.interval(1, TimeUnit.SECONDS, AndroidSchedulers.mainThread()) .subscribe { textView.text = it.toString } } } Aquí estoy pasando una expresión lambda en el método de suscripción en lugar de una class interna anónima. Entonces, ¿es necesario llamar a disposable.dispose() para […]

Obtuvo NoClassDefFoundError al pasar el map de lambda

Creo una aplicación para Android usando Kotlin, y hay algo extraño con lambda. Paso mapOf(1 to {…}, 2 to {…}) y obtengo NoClassDefFoundError o ClassNotFoundException . Intento reescribirlo en el escritorio y get el mismo, pero con diferente rastro de stack. fun main(args: Array<String>) { call(mapOf( 1 to { "asd" }, 2 to { 999 […]

Enlace de datos: el campo Observable con valor lambda no comstack

Estoy tratando de definir la visibilidad de la View calculando la lambda que toma un parámetro como argumento. Estoy usando Kotlin , por cierto. En mi ViewModel tengo: val customerPropVisibility: ObservableField<(KProperty1<Customer, *>) -> Int> = ObservableField( { _ -> // body of the lambda }) La expresión de enlace para la View es la siguiente: […]

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 […]

Java Lambda para Kotlin

Estoy construyendo mi código con Kotlin. Me encontré con un problema al usar Lambda en Kotlin con lo siguiente: Código Java: ((UndertowEmbeddedServletContainerFactory) container) .addBuilderCustomizers(builder -> builder.setServerOption(UndertowOptions.ENABLE_HTTP2, true)); Usar instanciación de interfaz común ((UndertowEmbeddedServletContainerFactory) container) .addBuilderCustomizers(new UndertowBuilderCustomizer() { @Override public void customize(Builder builder) { builder.setServerOption(UndertowOptions.ENABLE_HTTP2, true); } }); Mi código en Kotlin val c: UndertowEmbeddedServletContainerFactory = […]

¿Por qué la variable no se puede inicializar correctamente en la function en línea como en Java?

Sabemos que el cuerpo lambda está perezosamente bien, porque si no llamamos a la lambda nunca se llamará al código en el cuerpo lambda. También sabemos en cualquier lenguaje de function que una variable puede usarse en una function / lambda incluso si no está inicializada, como javascript, ruby, groovy y .etc, por ejemplo, el […]

¿Cómo pasar arguments a la function lambda anónima en Kotlin?

Me gustaría escribir una function lambda anónima en Kotlin, pero parece que no toma el argumento que se le pasó. (No se pasa del todo, ya que el IDE insinúa que " variable 'name' nunca se usa ".) Código: var name = "Tobias Boon" println("reverse=" + fun(name: String): String { var t: String = "" […]