Kotlinx inyecta vista desde el layout incorrecto

Tengo un código que comtesting si la vista es visible

import kotlinx.android.synthetic.main.activity_layout.* val isOverflowPanelShown: Boolean get() = overflow_panel.visibility != View.GONE 

el código anterior arroja una exception

 java.lang.ClassCastException: android.widget.FrameLayout cannot be cast to android.widget.ScrollView at com.company.app.Activity.isOverflowPanelShown(Activity.kt:362) 

La vista es una instancia de la class ScrollView , sin embargo, kotlin piensa que es un FrameLayout . Al llamar a findViewById () en el mismo lugar donde se arrojó el error, se devuelve ScrollView. Encontré que en el layout diferente en la aplicación hay un FrameLayout bajo la misma identificación .

Estoy inflando el siguiente layout

activity_layout

 <ScrollView android:id="@+id/overflow_panel" android:layout_width="300dp" android:layout_height="wrap_content" /> 

En otro layout que uso en un lugar completamente diferente, hay una vista diferente con el mismo ID.

form_component_main

 <FrameLayout android:id="@+id/overflow_panel" android:layout_width="250dp" android:layout_height="wrap_content" /> 

¿Por qué no les das identificaciones diferentes?

 overflow_panel_scroll overflow_panel_frame 

O algo más descriptivo de lo que realmente hacen.

ACTUALIZACIÓN: Un poco más de explicación, ya que esto fue votado. Los ID deben ser únicos.

La documentation de Android dice que puede haber conflictos si las ID no son únicas: An ID need not be unique throughout the entire tree, but it should be unique within the part of the tree you are searching (which may often be the entire tree, so it's best to be completely unique when possible). (de http://developer.android.com/guide/topics/ui/declaring-layout.html )

Los sintéticos Kotlin son producidos por un plugin IntelliJ. Sin los ID únicos, parece que el complemento actualmente no puede coincidir correctamente con el ID a la vista correcta. Puede estar esperando identificaciones únicas.

  • Fondo de relleno de Android AlertDialog
  • No se puede networkingucir una list de booleans en kotlin
  • Click listener en ViewHolder solo responde a veces
  • Kotlin DialogFragment editText editable always null
  • Error de puntero nulo al hacer reference a RecyclerView en un fragment con Kotlin
  • Diálogo personalizado de Kotlin Parámetro especificado como no nulo
  • ¿Integración de Kotlin en Java Code?
  • ¿Cómo conseguir ARTE ALBUM de una canción de su path en kotlin?
  • Advertencia obsoleta de Kotlin Runtime (complemento Kotlin 1.1.2-release-Studio2.3-3)
  • ¿Cómo crear un button en Kotlin que abre una nueva actividad (Android Studio)?
  • Dagger2 inyecta un presentador en un error de actividad de Kotlin