Flutter- Positioned

article/2025/9/28 20:05:23

Positioned widget 用于定位 Stack 的子 widget。

  • Flutter Stack

Positioned 仅用作 Stack 的直接(或后代)子部件。在 Positioned 到 Stack 的路径上,它只包含 StatelessWidget 或 StatefulWidget 小部件,不允许使用其他小部件(例如 RenderObjectWidget)。

Positioned的构造函数如下 - 

const Positioned({Key key,double left,double top,double right,double bottom,double width,double height,@required Widget child}
)

Dart

示例代码:

SizedBox (width: double.infinity,height: double.infinity,child: Stack(alignment: Alignment.centerLeft,children: <Widget>[Positioned (left: 100,top: 70,child: Container(width: 200,height: 100,color: Colors.green,),)],)
)

Dart

Positioned及其子对象的大小始终相同。运行上面示例代码,得到以下结果:

下面再来看一个示例:具有非空顶部和底部的 Positioned 会强制子小部件的高度发生变化以适应该约束。

示例代码:

SizedBox (width: double.infinity,height: double.infinity,child: Stack(alignment: Alignment.centerLeft,children: <Widget>[Positioned (top: 100,bottom: 70,child: Container (width: 200,height: 30, // !!color: Colors.green,),)],)
)

Dart

运行上面示例代码,得到以下结果:

如果 left、right、width 三个参数都为 null,则 Stack.alignment 属性将用于水平定位子窗口小部件。同样,如果所有三个参数 top、bottom 和 height 都为 null,则 Stack.alignment 属性将用于垂直定位子窗口小部件。

2. Positioned.directional构造函数

Positioned.directional构造函数用于创建基于文本方向的 Positioned

Positioned.directional构造函数

Positioned.directional({Key key,@required TextDirection textDirection,double start,double top,double end,double bottom,double width,double height,@required Widget child}
)

Dart

textDirection 参数是必需的,并且不为 null。它接受值 TextDirection.ltr(从左到右)或 TextDirection.rtl(从右到左)。
如果 textDirection 为 TextDirection.ltr,则参数 (start, end) 将对应 (left, right)。否则 (start, end) 将对应 (right, left)。

3. Positioned.fill构造函数

Positioned.fill是一个构造函数,其参数:left、right、top 和 bottom 的默认值为 0。

Positioned.fill构造函数

const Positioned.fill({Key key,double left: 0.0,double top: 0.0,double right: 0.0,double bottom: 0.0,@required Widget child}
)

Dart

4. Positioned.fromRect构造函数

Positioned.fromRect 使用 Rect 对象给定的值创建一个 Positioned 对象。

Positioned.fromRect构造函数 - 

Positioned.fromRect({Key key,Rect rect,@required Widget child}
)

Dart

5. Positioned.fromRelativeRect构造函数

Positioned.fromRelativeRect构造函数代码如下 - 

Positioned.fromRelativeRect({Key key,RelativeRect rect,@required Widget child}
)

//更多请阅读:https://www.yiibai.com/flutter/flutter-positioned.html 
 


http://chatgpt.dhexx.cn/article/pRXEDMRe.shtml

相关文章

jclasslib插件使用

1、安装 File->setting->plugins->Brower Repositories 安装好后如下图 2、查看二进制码即指令

JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用

文章目录 前言一、JVM基础1、cross platform 跨平台2、cross language 跨语言3、什么是JVM呢&#xff1f;一张图告诉你4、java从编码到执行*****5. 从跨平台的语言到跨语言的平台6. jvm与class文件格式7. JVM8. javac的过程9. 常见的JVM实现10. JDK JRE JVM 二、Class File For…

如何在IDEA中使用 Jclasslib

在插件中安装jclasslib&#xff0c;然后重启IDEA 选中你的java文件&#xff0c;然后View->Show ByteCode With Jclasslib即可

android studio 字节码查看工具jclasslib bytecode viewer

jclasslib bytecode viewer 是一款非常好用的.class文件查看工具&#xff1b; jclasslib bytecode editor is a tool that visualizes all aspects of compiled Java class files and the contained bytecode. Many aspects of class files can be edited in the UI. In addit…

Jclasslib 试用

简述&#xff1a; jclasslib 是一个查看class文件的工具 TestJclasslib.java package com.anialy.test;public class TestJclasslib {private String str "Im TestJclasslib";private void print(){System.out.println(str);}public static void main(String[] arg…

jclasslib修改class文件

今天看到别人写的用工具jclasslib直接修改别人jar包里面的class文件,我自己也学着写了一下&#xff0c;发现果然很强大&#xff0c;但是也遇到一些坑 public class JVMTest {public static void main(String[] args) {long maxMemory Runtime.getRuntime().maxMemory(); //返…

通过jclasslib修改class文件

问题描述&#xff1a;在开发中遇到使用第三方jar时想要修改里边某个class文件的情况 解决方法&#xff1a; 通过jclasslib直接修改class文件 安装jclasslib 可以通过下载jclasslib软件来安装&#xff08;不推荐&#xff09; 在IEDA插件中搜索安装jclasslib Bytecode Viewer&a…

IDEA利用jclasslib 修改class文件

IDEA利用jclasslib 修改class文件 idea安装jclasslib-bytecode-viewer插件准备好class文件使用jclasslib使用下列代码更改内容。其他 idea安装jclasslib-bytecode-viewer插件 file–>settings–>plugis &#xff0c;搜索安装jclasslib-bytecode-viewer&#xff0c;重启i…

jclasslib

JClassLib不但是一个字节码阅读器而且还包含一个类库允许开发者读取,修改,写入Java Class文件与字节码。 https://github.com/ingokegel/jclasslib jclasslib bytecode viewer Purpose jclasslib bytecode viewer is a tool that visualizes all aspects of compiled Java cl…

利用jclasslib工具直接修改第三方jar包里面的class文件(亲测可用)

如果出于某些原因&#xff0c;需要修改第三方jar包里的class文件&#xff0c;我们能有什么办法呢&#xff1f; 直接修改肯定是运行不了的&#xff0c;这里我给大家介绍一个小工具jclasslib,因为我的电脑是64位的&#xff0c;所以这里就安装64位版 下载地址&#xff1a;https:…

jclasslib的使用

作用&#xff1a; JClassLib不但是一个字节码阅读器而且还包含一个类库允许开发者读取,修改,写入Java Class文件与字节码 jclasslib下载&#xff1a;https://bintray.com/ingokegel/generic/jclasslib/view 我们在这里使用jclasslib查看局部变量表&#xff08;保存java中方法…

【jvm系列-02】jvm的类加载子系统以及jclasslib的基本使用

JVM系列整体栏目 内容链接地址【一】初识虚拟机与java虚拟机https://blog.csdn.net/zhenghuishengq/article/details/129544460【二】jvm的类加载子系统以及jclasslib的基本使用https://blog.csdn.net/zhenghuishengq/article/details/129610963【三】运行时私有区域之虚拟机栈…

如何利用JClassLib修改.class文件

最近在学习逆向分析和反编译&#xff0c;无意之中了解到了JClassLib。JClassLib不但是一个字节码阅读器而且还包含一个类库允许开发者读取,修改,写入Java Class文件与字节码。其他的用途我就不说了&#xff0c;先看一下效果。 第一步、准备下载工具&#xff0c;一个是jd-gui&am…

直接修改别人jar包里面的class文件 工具:jclasslib

出于某些原因 需要把别人jar包里面的class修改一下信息 配置文件*.properties MANIFEST.MF 这些东西可以直接用记事本打开修改 然后替换掉就OK.. 在网上游荡了半天&#xff0c;没有找到合适的方法 开始我是先用jd-gui反编译 把我需要修改的那个A.class文件反编译出来把代码保…

Idea中jclasslib的安装与使用

我们学习JVM的时候常常需要查看字节码指令&#xff0c;而idea中就可以下载jclasslib插件&#xff0c;进行字节码指令的查看。下面我来带大家jclasslib的安装。 安装 安装之后重启即可 使用 使用的时候只需要点开view选中下图的选项即可&#xff0c;但是要注意是编译后再使用…

jclasslib安装

学习一个jvm的知识的时候总要去研究一些字节码指令&#xff0c; 但是每一次都把class文件打开到jclasslib里面很是麻烦&#xff0c;后来google发现有人已经写好了这个插件 1、 按住 ALTCTRLS 打开setting 2、 选择 plugins 3、选择 Browse Repositories ,搜索 jclasslib 由于…

jclasslib修改jar包中class文件 IDEA

一、需求&#xff1a; 第三方jar包中的代码不符合项目的需求&#xff0c;需要对某个class文件进行修改&#xff0c;从而满足项目的需求。通常采用对class文件进行反编译&#xff0c;然后在重新生成jar包。但是反编译的结果不能100%正确&#xff0c;所以直接对class文件进行修改…

可视化已编译Java类文件字节码的神器jclasslib

1、概述 作为Java工程师的你曾被伤害过吗&#xff1f;你是否也遇到过这些问题&#xff1f; 运行着的线上系统突然卡死&#xff0c;系统无法访问&#xff0c;甚至直接OOM 想解决线上JVM GC问题&#xff0c;但却无从下手 新项目上线&#xff0c;对各种JVM参数设置一脸茫然&#x…

[JVM] Jclasslib -- 可视化反编译.class文件的工具

传统我们使用以下命令即可反编译字节码文件 javap -v xx.class Jclasslib是一个可视化已编译Java类文件和包含的字节码的工具。可以在UI中编辑类文件的许多方面。此外&#xff0c;它还包含一个库&#xff0c;使开发人员能够读写Java类文件和字节码。它有两种使用方式--软件安…

jclasslib 插件安装及使用

学习Java&#xff0c;必须要了解 JVM&#xff0c;而学习 JVM 知识时&#xff0c;总要去研究一些字节码指令 而 jclasslib 这个插件很好的解决了这个问题 jclasslib安装&#xff1a; 1.打开设置 或者按Ctrl Alt S&#xff0c;打开设置 2.找到 jclasslib 插件 点击 install …