Android 如何在Kotlin中以编程方式设置微光布局?
注意:我的问题不同于 我想在Kotlin代码中以编程方式设置ShimmerLayout的布局。有可能吗 Current可通过XML设置布局,如下所示:Android 如何在Kotlin中以编程方式设置微光布局?,android,kotlin,shimmer,Android,Kotlin,Shimmer,注意:我的问题不同于 我想在Kotlin代码中以编程方式设置ShimmerLayout的布局。有可能吗 Current可通过XML设置布局,如下所示: <com.facebook.shimmer.ShimmerFrameLayout android:id="@+id/shimmerLayout" android:layout_width="match_parent" android:layout_height="wrap_content" android:v
<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>
<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\u banner
,但它没有一个函数可以通过编程方式从Kotlin代码设置布局
如何通过Kotlin code with实现这一点仍然有一个
线性布局with垂直布局+可以添加更多1个标记?通过
标记包含的布局刚刚膨胀到父级,因此您可以简单地使用布局展开器来实现这一点
假设(从您的问题中)您将微光布局引用为微光布局
,您只需执行以下操作:
val inflater=LayoutInflater.from(shimmerLayout.context)
充气机。充气(右侧布局。微光旗帜,微光布局)
如果您已经有视图,要更改它,您需要执行shimmerLayout.removeAllViews()
,然后执行上述操作。Hi bro,如果要在
标记中添加多个视图,我该怎么办?您能否澄清一下“添加多个视图”的含义?如果要包含多个布局,当然可以多次调用inflate
,但由于这是一个FrameLayout,它们最终会彼此重叠。您可能希望将它们包装在LinearLayout或其他东西中。每个include标记相当于一个充气
,因此您可以多次调用充气
,正如我在前面的评论中提到的。因此,在我的新XML中,我只添加ShimerFrameLayout
,并在其中添加LinearLayout
。那么对于include标签
addfromKotlin代码?这是自动的,我从Kotlin代码中添加的标记将在线性布局中
?