【发布时间】:2014-02-14 22:26:45
【问题描述】:
假设我在布局中有关注 TextView:
<TextView
android:id="@+id/txtLoginError"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/sz_12dp"
android:gravity="center"
android:text="@string/foo" />
是否可以将@dimen/sz_12dp 更改为指向自定义类中的静态字段,例如:
public static class MyDimensions {
public static int topMarginInPixels = 99; // which would be referenced in some fashion like android:layout_marginTop="@class/MyDimensions.topMarginInPixels"
}
我基本上是在为一些实验寻找一种“数据绑定”布局元素的方法;而不是加载视图然后在代码中修改它(findview、setWeight 等)我希望在创建期间查看视图以从我的自定义类中获取大小,就像它从 R.java 中获取它一样。
注意:我知道支持多屏幕的最佳实践,px 和 dp 之间的差异,如何为不同的屏幕尺寸提供不同的 res/values 目录,所以请仅在您知道此问题的答案时才回复,而不是重复 @987654321 @。
【问题讨论】:
-
假设维度文件与字符串文件有类似行为:stackoverflow.com/questions/2643949/…
-
我真的不明白你想做什么......从
dimens文件中获取大小有什么问题? -
@gunar 尺寸在运行时不可编辑
-
确实,但是
LayoutParam可以在运行时更改其尺寸
标签: android