首页 > 解决方案 > 无法以编程方式将样式设置为 LinearLayout

问题描述

我正在尝试以这种方式将样式设置为以编程方式创建的 LinearLayout:

(参考:Android:以编程方式设置视图样式

LinearLayout linearLayout = new LinearLayout(this, null, R.style.linear_container);

和styles.xml

<style name="linear_container">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_marginBottom">20dp</item>
    <item name="android:background">#9B1212</item>
    <item name="android:orientation">vertical</item>
</style>

但是样式未应用如何使其工作?

标签: androidstylesandroid-linearlayoutprogrammatically-created

解决方案


您可以设置布局参数如下:

    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
         LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);

    layoutParams.setMargins(10, 10, 10, 10);
    linearLayout.setLayoutParams(layoutParams);

推荐阅读