ПРИМЕЧАНИЕ. Мой вопрос отличается от this .
. Я хочу установить макет ShimmerLayout как программно в коде Kotlin. Это можно сделать?
Ток, чтобы установить макет с помощью XML, например:
<com.facebook.shimmer.ShimmerFrameLayout
android:id="@+id/shimmerLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="@{showSimmerBanner ? View.VISIBLE : View.GONE, default=gone}">
<LinearLayout
android:id="@+id/shimmerOrientation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include layout="@layout/shimmer_banner" />
<include layout="@layout/shimmer_banner" />
<include layout="@layout/shimmer_banner" />
</LinearLayout>
</com.facebook.shimmer.ShimmerFrameLayout>
Можем ли мы установить макет (@layout/shimmer_banner
) из кода Kotlin?
Итак, xml выглядит следующим образом:
<com.facebook.shimmer.ShimmerFrameLayout
android:id="@+id/shimmerLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="@{showSimmerBanner ? View.VISIBLE : View.GONE, default=gone}"/>
А в Kotlin коде это называется xml следующим образом: shimmerLayout.set = R.layout.shimmer_banner
, но у него нет функции установить макет из кода Kotlin программным способом.
Как сделать это с помощью кода Kotlin, при этом LinearLayout
с vertical
+ может add more 1 <include> tag
?