記錄一下:
App Inventor學習記錄188-用Tinydb元件跨多個螢幕傳值的方法
這次範例的完成品如下。
最下方是兩個顯示 tinydb1和 tinydb2內容的標籤。
標籤的上是切換 4個螢幕的按鈕。
我們在切換螢幕後,會看到下方的值是相同的,就我們在其它一個螢幕修改了原先的清單,只要我們把清單儲存在 tinydb裡,然後切換到其它的螢幕後,我們儲存的值也會一起帶到其它螢幕中。
以往我們都是用 open another screen with start value方塊來做,但這次我們用 tinydb元件來做。
畫面編排的部份如下。
這裡用了兩個 tinydb的元件。請注意一下 tinydb元件的名稱。
用Tinydb元件跨多個螢幕傳值的方法,就是在不同的螢幕下,都拉同樣名稱的 tinydb元件。只要是 tinydb元件的名稱是相同的,我們在別的螢幕下,就可以直接用 tinydb的方塊,去取值出來用。
這裡補充一下 4個螢幕對應的元件名稱。
4個畫面都是相同的。
全部的程式方塊如下。
第 1部份的程式方塊記錄。
建立相關的清單。
第 2部份的程式方塊記錄。
建立顯示三個清單的內容程式,用來顯示 tinydb的內容。
第 3部份的程式方塊記錄。
程式一開始的時候,call tinydb.get value呼叫微型資料庫元件去取得資料,然後分配到對應的清單中,再呼叫顯示三個清單的內容程式,把清單顯示在最下方的標籤中。
這裡請特別特別的注意,tinydb元件,在名稱相同的時候,是可以跨螢幕共用的。
也就是說,這 4個螢幕用到的微型資料庫的名稱都是相同的,都是 tinydb1。
第 4部份的程式方塊記錄。
接下來的部份就很快的帶過,因為重點已經都介紹過了。
資料儲存按鈕,按下後會打開 listpicker清單選擇器,再從這裡選擇要儲存在那一個標籤下。
第 5部份的程式方塊記錄。
讀取按鈕,按下後開啟 listpicker 2清單選擇器 2。
我們在畫面編排的地方,把 listpicker 1和 listpicker 2的可見性,都設定為假。這樣不佔版面。這個也是清單選擇器元件比下拉式選單元件好用的地方,雖然它比較醜一些……
第 6部份的程式方塊記錄。
清空按鈕,按下後清單文字輸入盒上的文字。
第 7部份的程式方塊記錄。
資料庫清空。
第 8部份的程式方塊記錄。
清單選擇器選擇後,把資料存在選擇的標籤中。
第 9部份的程式方塊記錄。
切換不同螢幕的按鈕。
第 10部份程式方塊記錄。
跟第 8部份的程式是相同的做法,只是長了一點。
第 11部份的程式方塊記錄。
跟第 4部份的作法相同,只是這次把資料存在 tinydb2中,這是要測試有幾個 tinydb元件可以這樣做,測試的結果是……至少 2個。
第 12部份的程式方塊記錄。
讀取 tinydb2的資料測試。
好的,全部的程式方塊都簡單說明過了,建議大家試著做一次,就會用的越來越熟。
但如果不想要重新拉程式方塊,或要需要範例 aia檔的話,請前往第 2頁哦!