I cannot update text with tview

Solution 1:

func (*Application) Run():

Run starts the application and thus the event loop. This function returns when Stop() was called.

i.e. The statement tui.WriteMessage("hoge") in your program is never reached because Run() doesn't return until stopped explicitly. So to see hoge printed in the terminal, you must call tui.WriteMessage("hoge") before Run().

func main() {
    tui := newTui()
    tui.WriteMessage("hoge")
    tui.Run()
}