最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Golang語言的跨平臺UI工具包fyne使用詳解

 更新時間:2023年12月11日 10:59:22   作者:蕭楚河  
這篇文章主要為大家介紹了Golang語言的跨平臺UI工具包fyne使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

Fyne 是 fyne-io 組織在 Github 上開源的 Go 語言 UI 工具包 ,目前版本為 v2.3.5,2.3版是Fyne API的最新版本,它添加了一個精致的主題設(shè)計以及云存儲,同時改進(jìn)了國際語言和許多語言的文本處理較小的功能添加。我們現(xiàn)在正致力于下一個代號為Dalwhinnie。

Fyne是由Golang開發(fā)的跨平臺應(yīng)用,除了對Windows、Mac、Linux這三大PC平臺提供了支持,還支持樹莓派、移動APP的打包發(fā)布,可以說在跨平臺方面做到了極致。另外Fyne項目沒有復(fù)雜目錄結(jié)構(gòu),使用一個獨立的go文件就能啟動一個簡單的應(yīng)用。

安裝

Fyne 使用 Go 語言開發(fā),需要 Go 1.14 或以上,使用 go get 安裝:

go get fyne.io/fyne/v2

在導(dǎo)入新模塊后,請在第一次編譯代碼之前運(yùn)行以下命令。避免在編寫使用模塊的代碼之前運(yùn)行它,以防止意外刪除依賴項:

go mod tidy

Demo

Fyne的設(shè)計非常易于使用。請遵循了上述條件步驟安裝,現(xiàn)在需要打開IDE或者文本編輯器,然后打開一個新文件,既可以編寫您的第一個應(yīng)用程序了。如下:

package main
import (
  "fyne.io/fyne/v2/app"
  "fyne.io/fyne/v2/container"
  "fyne.io/fyne/v2/widget"
)
func main() {
  a := app.New()
  w := a.NewWindow("Hello")
  hello := widget.NewLabel("Hello Fyne!")
  w.SetContent(container.NewVBox(
    hello,
    widget.NewButton("Hi!", func() {
      hello.SetText("Welcome :)")
    }),
  ))
  w.ShowAndRun()
}

代碼十分簡潔明了。首先,通過 app.New() 創(chuàng)建一個應(yīng)用實例,并新建一個標(biāo)題為 Hello 的窗口。然后,使用 widget.NewLabel 來創(chuàng)建一個便簽,并在窗口設(shè)置 垂直方向排列的vbox 布局,首先放置標(biāo)簽,然后再放置一個新建的按鈕。按鈕注冊了一個點擊事件的回調(diào)函數(shù),在點擊按鈕時會把標(biāo)簽的文本更改為 Welcome。最后,運(yùn)行并顯示窗口。

直接運(yùn)行代碼

go run main.go

就會出現(xiàn)一個新的窗口,并顯示帶有一個標(biāo)簽和一個按鈕的界面:

移動端方案

打包

想要在移動設(shè)備上運(yùn)行,必須對應(yīng)用程序進(jìn)行打包。為此,我們可以使用fyne實用程序“package”子命令,添加適當(dāng)?shù)膮?shù),參考的基本命令如下。打包后,您可以使用平臺開發(fā)工具或fyne“install”子命令進(jìn)行安裝。

fyne package -os android -appID my.domain.appname
fyne install -os android

構(gòu)建的Android應(yīng)用程序可以在真實設(shè)備或Android模擬器中運(yùn)行。iOS的構(gòu)建略有不同。如果"-os"參數(shù)是"ios",則它僅針對真正的ios設(shè)備構(gòu)建。將“-os”指定為“iosimulator”允許應(yīng)用程序在iOS模擬器中運(yùn)行。

fyne package -os ios -appID my.domain.appname
fyne package -os iossimulator -appID my.domain.appname

發(fā)布

使用fyne release命令,可以打包應(yīng)用程序進(jìn)行發(fā)布到應(yīng)用商店和市場。確保安裝了標(biāo)準(zhǔn)生成工具并遵循了平臺文檔設(shè)置帳戶和簽名。然后可以執(zhí)行如下當(dāng)-os為ios參數(shù)允許從macOS計算機(jī)構(gòu)建iOS應(yīng)用程序。

$ fyne release -os ios -certificate "Apple Distribution" -profile "My App Distribution" -appID "com.example.myapp"

上述命令將創(chuàng)建一個“.ipa”文件,然后可以將該文件上載到iOS應(yīng)用商店。

總結(jié)

Fyne 作為一個 UI 工具包,依靠 Go 語言的優(yōu)秀性能,尤其是 goroutine 協(xié)程的異步特性,實現(xiàn)了高性能、易開發(fā)的圖形界面應(yīng)用。Fyne 的使用和設(shè)計十分現(xiàn)代化,通過簡單的命令行就能實現(xiàn)跨平臺的開發(fā)和構(gòu)建,安裝方便,平臺兼容性好。

Fyne 并未基于現(xiàn)有的 UI 庫進(jìn)行開發(fā),而是直接使用不同平臺的圖形驅(qū)動實現(xiàn),完成了對跨平臺 UI 的抽象,底層代碼值得研究。

以上就是Golang語言的跨平臺UI工具包fyne使用詳解的詳細(xì)內(nèi)容,更多關(guān)于Go跨平臺UI工具包fyne的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Golang Http 驗證碼示例實現(xiàn)

    Golang Http 驗證碼示例實現(xiàn)

    這篇文章主要介紹了Golang Http 驗證碼示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Go中l(wèi)og包異或組合配置妙用詳解

    Go中l(wèi)og包異或組合配置妙用詳解

    在 Go 語言的 log 包中,使用“位運(yùn)算相或” (|) 來配置日志的 flag,可以讓我們靈活地組合多種日志信息輸出選項,下面我們就來看看這種方法的好處和原理吧
    2024-11-11
  • Golang 實現(xiàn)超大文件讀取的兩種方法

    Golang 實現(xiàn)超大文件讀取的兩種方法

    這篇文章主要介紹了Golang 實現(xiàn)超大文件讀取的兩種方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • Go語言開發(fā)框架反射機(jī)制及常見函數(shù)示例詳解

    Go語言開發(fā)框架反射機(jī)制及常見函數(shù)示例詳解

    這篇文章主要為大家介紹了Go語言開發(fā)框架反射機(jī)制及常見函數(shù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Golang繼承模擬實例詳解

    Golang繼承模擬實例詳解

    這篇文章主要介紹了Golang繼承模擬方法,結(jié)合實例形式分析了Go語言實現(xiàn)繼承的原理與相關(guān)操作技巧,需要的朋友可以參考下
    2016-07-07
  • 詳解Golang中鏈表的創(chuàng)建和讀取

    詳解Golang中鏈表的創(chuàng)建和讀取

    這篇文章主要為大家詳細(xì)介紹了Golang中鏈表的創(chuàng)建和讀取的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,感興趣的小伙伴可以跟隨小編一起了解下
    2023-12-12
  • 使用Go語言實現(xiàn)遠(yuǎn)程傳輸文件

    使用Go語言實現(xiàn)遠(yuǎn)程傳輸文件

    本文主要介紹如何利用Go語言實現(xiàn)遠(yuǎn)程傳輸文件的功能,有需要的小伙伴們可以參考學(xué)習(xí)。下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)。
    2016-08-08
  • 在Golang中使用Redis的方法示例

    在Golang中使用Redis的方法示例

    這篇文章主要介紹了在Golang中使用Redis的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • 一文帶大家搞懂Go語言中的迭代器

    一文帶大家搞懂Go語言中的迭代器

    迭代器是使用戶可在容器對象上遍訪的對象,設(shè)計人員使用此接口無需關(guān)心容器對象的內(nèi)存分配的實現(xiàn)細(xì)節(jié),本文主要為大家詳細(xì)介紹一下Go語言中的迭代器的實現(xiàn),需要的可以了解下
    2025-02-02
  • Golang分布式注冊中心實現(xiàn)流程講解

    Golang分布式注冊中心實現(xiàn)流程講解

    這篇文章主要介紹了Golang分布式注冊中心實現(xiàn)流程,注冊中心可以用于服務(wù)發(fā)現(xiàn),服務(wù)注冊,配置管理等方面,在分布式系統(tǒng)中,服務(wù)的發(fā)現(xiàn)和注冊是非常重要的組成部分,需要的朋友可以參考下
    2023-05-05

最新評論

长兴县| 叙永县| 政和县| 甘谷县| 花莲县| 石狮市| 香格里拉县| 桐乡市| 通江县| 左云县| 保定市| 鸡泽县| 鄂伦春自治旗| 隆昌县| 胶州市| 赣榆县| 镇江市| 彰武县| 陇南市| 浮梁县| 山阳县| 桃园市| 毕节市| 肥东县| 申扎县| 藁城市| 全南县| 南投县| 长武县| 吴忠市| 宝坻区| 南江县| 平阴县| 平顶山市| 敦化市| 兖州市| 光山县| 邻水| 永修县| 河间市| 全椒县|