样式文件的属性对视图没有影响



我在我的Android应用程序中使用了一些样式文件,例如:

<style name="message">
    <item name="android:layout_width">wrap_content</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:textColor">#000000</item>
    <item name="android:gravity">center_vertical</item>
    <item name="android:layout_weight">1</item>
</style>

然后我使用这些样式创建了一些组件:

TextView tv = new TextView(new ContextThemeWrapper(this, R.style.message));

我的问题是,我注意到某些属性对我的组件没有影响,在这种情况下, layout_weight 不起作用,我有义务在我的代码中指定它:

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(0, LayoutParams.WRAP_CONTENT);
params.weight = 1;
tv.setLayoutParams(params);

如果您有一个主意,请告诉我。

谢谢。

问题依赖于android:layout_weight仅在您所经历的某些LayoutParam s上工作的事实。

作为在Android上的样式方面的一般最佳实践,建议不要将layout特定属性包含在样式中,因为您的样式视图可以重复使用并处于不同的布局。

相关内容

  • 没有找到相关文章

最新更新