Articles of kotlin android extensiones

Problema de Kotlin Gradle

He creado un Jar de un proyecto escrito en lenguaje Kotlin. Jar contiene las siguientes carpetas: com jet kotlin meta-inf okio org Luego creé un proyecto de Android y agregué Kotlin y el Jar como dependencia. Cuando bash ejecutar la aplicación hello world arroja la siguiente exception. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/usr/lib/jvm/java-7-openjdk-amd64/bin/java'' finished with non-zero […]

Cómo usar fragments con kotlin

No puedo encontrar cómo usar fragments usando kotlin. Aparece un error en el método onCreateView, por favor, ayúdenme. ListaFragment.kt: class ListaFragment : Fragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle): View? { val view = inflater.inflate(R.layout.fragment_list, container, false) return view } } fragment_list.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center"> <TextView […]

Este tipo tiene un constructor y debe ser inicializado aquí – Kotlin

Empecé a experimentar con la aplicación de Android con Kotlin . Solo quería henetworkingar la class de aplicación así: class SomeApp : Application { } Pero el comstackdor plantea la advertencia: y la sugerencia lo cambia a: class SomeApp : Application() { override fun onCreate() { super.onCreate() } } Leí acerca de constructores primarios y […]

Anulación accidental: las siguientes declaraciones tienen la misma firma de JVM

Estoy obteniendo este error en Kotlin en esta parte: class GitHubRepoAdapter(private val context: Context, private val values: List<GithubRepo>) : ArrayAdapter<GithubRepo>(context, R.layout.list_item, values) { context val privado: context en el log dice: Error: (14, 25) Anulación accidental: las siguientes declaraciones tienen la misma firma JVM (getContext () Landroid / content / Context;): fun (): Context fun […]

Diseño sintético y personalizado de Kotlin en DialogFragment

Digamos que tengo este layout: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ImageButton android:id="@+id/add_dep_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" android:layout_alignParentRight="true" android:layout_marginEnd="5dp" android:layout_marginRight="5dp" android:src="@android:drawable/ic_input_add" /> <EditText android:id="@+id/add_dep_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@id/add_dep_btn" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignTop="@id/add_dep_btn" android:layout_marginLeft="5dp" android:layout_marginStart="5dp" android:layout_toLeftOf="@id/add_dep_btn" android:layout_toStartOf="@id/add_dep_btn" /> <android.support.v7.widget.RecyclerView android:id="@+id/dep_list" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/add_dep_btn" /> <TextView android:id="@+id/empty_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/add_dep_text" android:layout_margin="20dp" android:gravity="center" android:text="@string/no_dep" android:textSize="22sp" /> </RelativeLayout> Y lo […]

¿Qué significa la advertencia «Usar properties de los packages de variante de compilation»?

¿Qué significa esta advertencia? Aparece en la versión 1.0.0-beta-3595 para todos los usos de las extensiones android de Kotlin en mi código.

La interoperabilidad Varargs Kotlin Java no funciona correctamente

Para makeSceneTransitionAnimation hay dos funciones estáticas public static ActivityOptionsCompat makeSceneTransitionAnimation(Activity activity, View shanetworkingElement, String shanetworkingElementName) y public static ActivityOptionsCompat makeSceneTransitionAnimation(Activity activity, Pair<View, String>… shanetworkingElements) La primera llamada a function funciona correctamente en Kotlin pero cuando se llama al segundo, ambas llamadas devuelven errores val imageTransition = Pair<View, String>(imageView, imageView.getTransitionName()); val textTransition = Pair<View, String>(textView, textView.getTransitionName()); […]

El tipo Out-Projected 'ArrayList <*>' prohíbe el uso de 'public fun fun add (índice: Int, elemento: E): Unidad definida en java.util.ArrayList'

Tengo estos fragments: class RecyclerViewAdapter internal constructor( val clazz: Class<out RecyclerViewViewHolder>, val layout: Int, var dataList: MutableList<*>) … … … fun RecyclerView.getDataList() : ArrayList<*> { return (adapter as RecyclerViewAdapter).dataList as ArrayList<*> } … … … entonces lo uso en esto: recyclerView.getDataList().add(Person("Lem Adane", "41 years old", 0)) pero obtengo este error: Error:(19, 31) Out-projected type 'ArrayList<*>' […]

La diferencia entre !! y? en Kotlin

Soy nuevo en Kotlin . ¡Quiero saber la diferencia entre estos dos !! y ? en el siguiente código. Estoy teniendo el siguiente fragment de dos primero teniendo uso de !! para mCurrentDataset y otro tener ? para la misma variable. if(!mCurrentDataset!!.load(mDataSetString.get(mCurrentDataSelectionIndex), STORAGE_TYPE.STORAGE_APPRESOURCE)) { Log.d("MyActivity","Failed to load data.") return false } if(!mCurrentDataset?.load(mDataSetString.get(mCurrentDataSelectionIndex), STORAGE_TYPE.STORAGE_APPRESOURCE)!!) { Log.d("MyActivity","Failed […]

Extensiones de Kotlin para Android y fragments retenidos

Estoy usando extensiones Kotlin de Android en mi proyecto y me encontré con un comportamiento que no puedo entender. Uso este código para retener mi fragment en la actividad: val fragment = fragmentManager.findFragmentByTag("hello") ?: HelloFragment() fragmentManager.beginTransaction() .replace(R.id.fragment_container, fragment, "hello") .commit() Este es el Fragment retenido: import kotlinx.android.synthetic.hello.* public class HelloFragment : Fragment() { val text […]