75才からのモバイルアプリ作成

MIT App Inventor 2 を使ったアプリ作成

MIT App Inventorで遊ぶ (THE MOVIE DB 1-2)

2024-05-18 08:29:06 | 日記

ページ送りとページ戻りのボタンを作成したのに実装していなかったので、動作するように設定した。また、現在のページと全体のページを表示。数日前の総ページ数は44,192頁。(以下実行画面をキャプチャーした時は、44,202頁に増えていた。)

44,192頁目を見たかったが、最大検索件数は500頁まで(44,192頁を指定して検索したら、以下の通りのリターン。)となっており、データを取得することはできなかった。地域を日本、言語を日本語で検索したが、映画の本数合計は、 883,838本。

{"success": false,"status_code": 22,"status_message": "Invalid page: Pages start at 1 and max at 500. They are expected to be an integer."}

実行画面:

背景をダークモードにしてみた。また、リストの検索ウインドウを追加したが、検索ウインドウの背景色までダークとなってしまった(MIT AppInventorのバグ?)。=> この試みは失敗。Designerでは、背景色は白色なのだが。

このビデオはダークモードをやめて元のカラーモードでキャプチャーしたもの。

スクリーンのデザイン:

検索ウインドウが追加された程度。

              

ブロック・コード:追加部分のみ。

1. 現在見ているページおよび総ページ数を格納する変数。

2. FetchボタンをタップしてGETリクエストを行う関数makeGETRequestを実行。

3. makeGETRequest関数:

所定のURLにGETリクエストを行うと同時にProgress Viewを表示。

4. 全ての変数を初期値に戻す関数resetVariables

5. GETリクエストの結果返ってくるデータをDictionary形式でデコードして、必要なデータなどを抽出する関数 (getTotalPages, getListLength, getTitleList, getReleaseDateList, getOverviewList, getPosterPath) を実行。全てのデータを一つのリスト(dataList) に束ねてListViewで表示。また、現在のページおよび総ページ数も表示。

6. 頁送りボタンをタップした時の動作を設定。ページ数が500未満(500頁まで検索可能なので、ここは「以下<=」でもOKだった)の場合、ページ数を1加算し、変数を初期化後、再度GETリクエストを行う。

7. 頁を戻るボタンをタップした時の動作を設定。ページ数が1超の場合に、ページ数を1減少し、変数を初期化後、再度GETリクエストを行う。

 

(Credit : The Movie DB https://www.themoviedb.org/?language=ja)