边框布局 Border #
边框布局可能是构建用户界面时使用最广泛的布局之一,因为它允许围绕一个将扩展以填充空间的中心元素定位项目。要创建一个边框容器,你需要将应该在边框位置定位的 fyne.CanvasObject
作为构造函数的前四个参数传递。这个语法基本上就是 container.NewBorder(top, bottom, left, right, center)
,如示例所示。
传递给容器的前四个项目之后的任何项目都将被定位到中心区域,并将扩展以填充可用空间。你也可以将 nil
传递给你希望留空的边框参数。
package main
import (
"image/color"
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/canvas"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/layout"
)
func main() {
myApp := app.New()
myWindow := myApp.NewWindow("边框布局")
top := canvas.NewText("顶部栏", color.White)
left := canvas.NewText("左侧", color.White)
middle := canvas.NewText("内容", color.White)
content := container.NewBorder(top, nil, left, nil, middle)
myWindow.SetContent(content)
myWindow.ShowAndRun()
}
请注意,中心的所有项目都将扩展以填充空间(就像它们在
layout.MaxLayout
容器中一样)。要自己管理该区域,你可以使用任何 fyne.Container
作为内容。