【发布时间】:2014-09-23 14:36:46
【问题描述】:
我想实现一个自定义 LayoutInflater 来缩放尺寸值,例如, 使用:
int scale = 2;
MyInflater.inflate(R.id.testview, null, parent, scale);
将使所有维度值加倍的 xml 膨胀。
就是这样一个xml:
<View android:layout_width="10dp" android:layout_height="10dp" />
将膨胀到宽度和高度为 20dp 的视图。
LayoutInflater.Factory 无法解决我的问题。
有什么方法可以实现吗?
【问题讨论】:
-
"LayoutInflater.Factory 无法解决我的问题。" -- 为什么不呢?
-
@CommonsWare 如果使用
LayoutInflater.Factory,我必须自己创建每个视图,因为没有链接超级调用;而LayoutParams的生成是出自createViewFromTag(),这里调用的是Factory的onCreateView(),所以在Factory的onCreateView()中,修改LayoutParams是不可能的。 -
我不太明白这个问题,你想在膨胀时从 xml 中缩放视图?
-
@DarkoPetkovski yepp,我想在放大视图时缩放 dp 中的所有尺寸