首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

写给初学者的Jetpack Compose教程,基础控件和布局

Surface函数是Material库中提供的一个通用函数,它的主要作用是为了让应用程序可以更好地适配Material Design,例如控制阴影高度、控制内容颜色、裁剪形状等等。...也就是说,写在DefaultPreview函数中的UI,可以在运行程序到手机上的情况下就实现快速预览。...,剩下的其他控件会仍然保持居中对齐,如下图所示: 除了可以指定子控件在水平方向上的对齐方式外,我们还可以指定子控件在垂直方向上的分布方式,这是什么意思呢?...但这并不影响我们指定其他的参数,比如我们想要将这些子控件在垂直方向中居中对齐,就可以这样写: @Composable fun SimpleWidgetColumn() { Row(...反过来Row因为是横向布局,因此只能指定垂直方向上的对齐方式,所以提供了verticalAlignment参数。

1.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

Row本身是不支持滚动,如何实现滚动

注意:compose似乎不支持一个水平滚动嵌套垂直滚动(或垂直滚动中嵌套水平滚动),所以相应布局需要合理设计 此外,提及下,如果想使用像ListView或RecyclerView那样的列表组件,在Compose...horizontalAlignmentment 水平方向对齐 Spacer Spacer,直接翻译的话,应该是空格,其主要就是充当margin的作用,一般使用modifier修饰符来设置宽高占位来达到...margin效果 Card 官方封装好的Material Design的卡片布局 复制fun Card( modifier: Modifier = Modifier, shape: Shape...dp, content: @Composable () -> Unit ) shape 形状,使用详见Jetpack Compose学习(3)——图标(Icon) 按钮(Button) 输入框(TextField...backgroundColor 背景色 contentColor 内容的背景色 border 边框,使用详见Jetpack Compose学习(3)——图标(Icon) 按钮(Button) 输入框(TextField

1.8K30

Unity3d开发

void OnGUI() { GUI.Box(new Rect(Screen.width-100, 0, 100, 50),content); } Label 用于创建我呢本标签和纹理标签...10000, 20)); } Windows 一个游戏界面可以又很多窗口组成,在每一个窗口可以添加不同的任意的功能组见,让窗口的使用丰富了游戏界面的内容 参数 参数 描述 Style 窗口的可选样式,如果设置使用当前的...应用于所有标签控件的样式 TextField 文本框 应用于所有文本框的样式 TextArea 文本区域 应用于所有多行文本域控件的样式 Window 窗口 应用于所有窗口控件的样式 Horizontal...应用于所有垂直滚动条的样式 Vertical Scrollbar Thumb 垂直滚动条滑块 应用于所有垂直滚动滑块的样式 Vertical Scrollbar Up Button 垂直滚动条顶部按钮...Font Style 设置字体样式 Font Size 设置字体大小 Line Spacing 设置行间距(多行) Rich Text 设置富文本 Alignment 设置文本在Text框中的水平以及垂直方向上的对齐方式

9.1K30

AWT常用组件

AWT中常用组件 前言 一、基本组件 组件名 标签(Label类) Label类的构造方法 注意要点 按钮(Button) Button的构造方法 注意要点 文本框(TextField) TextField...通常,是不可编辑的;在AWT 的Label 类实例化标签对象时,可通过构造方法的参数赋值指定标签上文本的对齐方式。Label类的构造方法如表所示。...Label类的构造方法 构造方法 描述 Label() 实例化空标签对象 Label(String text) 使用指定的文本字符串实例化标签对象,其文本对齐方式为左对齐 Label(String text..., int alignment) 实例化一个显示指定的文本字符串的新标签对象,其文本对齐方式为指定的方式 Label 对象不仅可在实例化时,指定文本对齐方式,还可在此后调用成员方法setAlignment...TextArea类的构造方法有5 种重载形式,通过参数赋值,不但可以像 TextField 一样指定初始化文本内容、列数,而且可以指定文本域的行数、垂直滚动条的显示。

7310

Flutter中构建布局 顶

但是你看不到的东西也是小部件,例如排列,约束和对齐可见小部件的行,列和网格。 您可以通过构建小部件来创建布局来构建更复杂的小部件。 例如,左边的屏幕截图显示了3个图标,每个图标下有一个标签: ? ?...应用程序包含AppBar,标题或背景颜色。...您可以指定行或列如何在垂直和水平方向上对齐其子项。 您可以拉伸或限制特定的子部件。 您可以指定子窗口小部件如何使用行或列的可用空间。...对于一列,主轴垂直运行,横轴水平运行。 ? ? MainAxisAlignment和CrossAxisAlignment类提供了用于控制对齐的各种常量。...渲染盒(在这种情况下,整个屏幕)的高度大于300像素,因此将主轴对齐设置为spaceEvenly将自由垂直空间均匀分配在每个图像之间,之上和之下。

43K10

Flutter | 常用组件

;可以选择左对齐、右对齐还是居中。...4,可以通过 TextSpan 和文本混用 使用 Material Design 字体图标 Flutter 默认包含了一套 Material Design 的字体图标库,在 pubspec.yaml...上面代码中,都行需要维护组件的状态,所以继承自 StatefulWidget ,在 build 中,构建了 checkBox 和 Switch 和 Radio,在点击的时候修改状态,然后重新构建 UI...因此,我们在自定义组件是应该思考一下那种方式最为合理 输入框和表单 Material 组件库中提供了输入框组件 TextField 和表单组件 From ,下面来具体看一下 TextField 用于文本输入...borderSide: BorderSide(color: Colors.red, width: 2.0)),//颜色,宽度 ), 颜色使用的是主题颜色,//TODO 这里设置的生效

11.4K30

Material Design — 菜单(Menus)

菜单栏通常使用单个单词作为标签,如“文件”,“格式”和“编辑”。其他上下文可能需要更长的标签。 禁用菜单选项 菜单显示一组一致的菜单项。...不可用的例子 ---- 行为 菜单出现在app内所有其他UI元素之上。 ? 菜单位于触发菜单元素的正上方,且使得当前选择的菜单项出现在触发出的菜单的顶部(如下图)。 ?...垂直对齐 靠近屏幕边缘时,简单菜单将垂直重新对齐,以使所有菜单项完全可见。...简单菜单 ·打开时,简单菜单会尝试将当前选定的菜单项目与列表项目垂直对齐。 当前选择的菜单项突出显示(如下图)。 ? 向下展开的简单菜单 ?...·但在靠近屏幕边缘时,简单菜单会重新定位其垂直对齐方式,以便所有菜单项都完全可见。 ? ·简单菜单也应该应该显示在其触发元素上,而不是下面(如下图)。 ?

5.8K100

基于 HTML5 的 3D 工业互联网展示方案

/controller/sidebar.js'; HT 封装了一个 ht.ui.VBoxLayout 函数,用来将子组件放置在同一垂直列中,我们可以将左侧栏要显示的部分都放到这个组件中,这样所有的部分都是以垂直列排布...顶部 logo 是根据在 Label 标签上添加 icon 的方法来实现的,并将这个 topLabel 添加进垂直列 vBoxLayout 中: ?...问题反馈按钮,我们将这个部分用 HT 封装的 ht.ui.Button 组件来制作,并将这个部分添加进垂直列 vBoxLayout 中: ?...这里我们没有对“搜索框” searchField 进行数据绑定,以及搜索的功能,这只是一个样例,涉及业务部分: let searchField = new ht.ui.TextField();// 文本框组件...textField = new ht.ui.TextField();// 文本框组件 textField.setFormDataName('remark');// 设置组件在表单中的名称 textField.setBackground

2.7K20

Flutter基础之常用Widget详解一

Widget概念 Widget 可理解为原生的UI元素 但不仅仅如此,Flutter中的widget概念更广泛, 不仅表示UI元素, 也可以是一些功能性的组件 (如:GestureDetector...Widget只是UI元素的一个配置数据,并且一个Widget可以对应对个Element,这是因为同一个Widget对象可以被添加到UI树的不同部分,而真正渲染时,UI树的每一个Widget节点都会对应一个...Flutter系统提供了2套UI风格的库,Cupertino widget(iOS 风格)和 Material Design(安卓风格)。...;end,沿着主轴方向(水平方向)底部对齐;center,沿着主轴方向(水平方向)居中对齐;spaceBetween ,沿着主轴方向(水平方向)平分剩余空间;spaceAround,把剩余空间平分成n份...)顶部对齐;end,沿着主轴方向(垂直方向)底部对齐;center,沿着主轴方向(垂直方向)居中对齐;spaceBetween ,沿着主轴方向(垂直方向)平分剩余空间;spaceAround,把剩余空间平分成

1.9K10

基于 HTML5 WebGL 的 3D 仓储管理系统

/controller/sidebar.js'; HT 封装了一个 ht.ui.VBoxLayout 函数,用来将子组件放置在同一垂直列中,我们可以将左侧栏要显示的部分都放到这个组件中,这样所有的部分都是以垂直列排布...logo 是根据在 Label 标签上添加 icon 的方法来实现的,并将这个 topLabel 添加进垂直列 vBoxLayout 中: let topLabel = new ht.ui.Label...这里我们没有对“搜索框” searchField 进行数据绑定,以及搜索的功能,这只是一个样例,涉及业务部分: let searchField = new ht.ui.TextField();//文本框组件...('left');//设置文字和图标在按钮水平方向的整体对齐方式,默认为 'center' label.setTextColor('rgb(255,255,255)');//设置文字颜色 var textField...= new ht.ui.TextField();//文本框组件 textField.setFormDataName('remark');//设置组件在表单中的名称 textField.setBackground

3.5K51

Flutte部件目录-Material Components 顶

底部导航栏由文本标签,图标或两者的多个项目组成,并放置在一块材料的顶部。 它提供了应用程序顶级视图之间的快速导航。 对于更大的屏幕,侧面导航可能更适合。...Design小部件,显示水平的一行标签。...输入和选择 TextField 触摸文本字段将放置光标并显示键盘。 TextField部件实现了这个组件。 ? Checkbox 复选框允许用户从一组中选择多个选项。...Chip 一个Material Design芯片。 芯片代表小块中的复杂实体,如联系人。 ? Tooltip 工具提示提供的文本标签可帮助解释按钮或其他用户界面操作的功能。...GridView 网格列表由以垂直和水平布局排列的单元格的重复模式组成。 GridView小部件实现了这个组件。 ?

9.4K40
领券