如果我想在Flutter应用中翻译任何Widget,我将使用以下代码。
Transform.translate()
需要翻译功能偏移量(dx,dy)。但是我想找到当前窗口小部件的dx或dy值,因此我可以将窗口小部件从设备上的当前位置向左,向右或上下移动。
答案 0 :(得分:0)
这就是它的工作原理
如果我愿意
Transform.translate(offset: Offset(-10, 20)
它会将其位置10从其正常渲染位置向左变换,并向下变换20。
答案 1 :(得分:0)
这并非易事。您必须使用渲染对象。您可以先复制粘贴addNetwork(Configurations)
和WifiManager
类。 Transform
覆盖了方法RenderTransform
,其参数RenderTransform
是小部件的本地位置:
paint
例如,如果小部件的X位置小于20,我将其移至X的0位置:
offset
然后我将在父级窗口小部件的左侧添加10个像素填充,但该窗口小部件将粘在左侧:
@override
void paint(PaintingContext context, Offset offset) {
if (child != null) {
final Matrix4 transform = _effectiveTransform;
final Offset childOffset = MatrixUtils.getAsTranslation(transform);
if (childOffset == null) {
layer = context.pushTransform(needsCompositing, offset, transform, super.paint, oldLayer: layer);
} else {
super.paint(context, offset + childOffset);
layer = null;
}
}
}