Articles of interfaz

kotlin llamando a una function de mutación en la delegación de la class

Soy nuevo en Kotlin, no sé cómo explicar esto, pero este ejemplo debería ser suficiente interface Walker{ var position:Pair<Int,Int> fun walk(to:Pair<Int,Int>){ position = to; } fun trip() } class People(override var position: Pair<Int, Int>):Walker{ override fun trip() { Log.v("TP","Ouch!!") } } class Superman(override var position: Pair<Int, Int>): Walker by People(position){ } cuando llamo val sm […]

Comunicación de extensión Kotlin-android entre classs similar a la comunicación con otros fragments

Tengo 3 partes para mi proyecto: un model que hace cálculos, algunos fragments que muestran la interfaz de usuario y envían el disparador a mi tercera parte, la actividad principal. Hice todos mis Fragmentos con algunas interfaces como Comunicarse con Otros Fragmentos . Sin embargo, ahora necesito una de las partes de mi Modelo para […]

¿Por qué la interfaz escrita en Kotlin desaparece después de reiniciar en Android Studio?

Tengo una interfaz escrita en Kotlin para hacer llamadas REST (que funciona hasta ahora): import io.reactivex.Observable import okhttp3.ResponseBody import retrofit2.Response import retrofit2.http.Body import retrofit2.http.POST const val PUSH_ENDPOINT = "prices/v1" interface ArticleSearchRestAdapter { @POST("$PUSH_ENDPOINT/articles/search") fun register(@Body articlerequest: ArticleRequest): Observable<Response<ResponseBody>> } Como he dicho, esto funciona hasta ahora, pero después de un REBOOT de PC en Android […]

Lista de objects que implementa la interfaz

Con interface Anint { fun doStuff() } class AClass : Anint { override fun doStuff() = print("hello") } class AnintManager { //val l = listOf<Anint> fun manage() { //for each Anint, doStuff() } } fun main(args: Array<String>) { val a = AClass() val b = AClass() AnintManager().manage() } ¿Cómo puedo hacer para que cada vez […]

Declarar un campo de interfaz estática en Kotlin

¿Es posible escribir el equivalente de Java? interface Foo { public static final INSTANCE = new Foo {}; } en Kotlin? Si Foo fuera una class, podría usar: class Foo { companion object { @JvmField val INSTANCE = object : Foo() {} } } pero con una interfaz da un error: JvmField no se puede […]

¿Qué lenguajes de progtwigción admiten la implementación implícita de la interfaz por delegación?

Kotlin puede hacer este truco muy limpio: class Derived(b: Base) : Base by b lo que hace que su class Base implementos Derived , y todos los methods de Base no implementados explícitamente en Derived se deleguen automáticamente al miembro b . No programo en Kotlin y perder 'this' puntero puede ser bastante limitante, pero […]

Anulando la misma firma de diferentes intefaces

en c sharp, si tenemos 2 interfaces, con el mismo método de firma, podemos implementarlas en una class, de la siguiente manera: interface A { void doStuff(); } interface B { void doStuff(); } class Test : A, B { void A.doStuff() { Console.WriteLine("A"); } void B.doStuff() { Console.WriteLine("A"); } } Si traicionamos esto a […]

Declaración de interfaz Java vs Kotlin

Digamos que tengo estas interfaces de Java y Kotlin: public interface JavaInterface { void onTest(); } interface KotlinInterface { fun onTest() } ¿Por qué no puedo crear una instancia de interfaz Kotlin sin constructor? // this is okay val javaInterface: JavaInterface = JavaInterface { } // compile-time exception: interface does not have constructor val kotlinInterface1: […]

¿Puede Kotlin permitir una function que devuelva un valor del tipo de implementación de esta interfaz?

Quiero escribir algo como esto: /** * Represents a state, large or small. */ interface State { /** * */ val changeValue: StateChange<This> // does not compile; "This" is a keyword I made up that might reference the implementing class } /** * Represents a change in a state, large or small. * * @param […]

Establecer el setter de una interfaz en la class que lo implementa

Solo comience usando kotlin en Android- Estoy tratando de usar setter de una interfaz en una class que lo implementa- interface MyInterface { val prop: Int // abstract var propertyWithImplementation: String get() = "foo" set(text){"$text foo"} fun foo() { print(prop) } } class Child : MyInterface { override val prop: Int = 29 override var […]