Successfully scrolling TableView

1.ようやく発見

 以前の記事ではスクロール失敗に終わっていました。

色々と調べていましたが、ようやくスクロールさせることができたようです。

なかなか情報が探せずにいましたが、結局は、Pythonistaフォーラムから見つけることができました。

半ば、諦めていたところだったのですが、フォーラムをもう少しよく見直してみました。

2.TableViewのスクロール

フォーラムからは下記情報を入手しました。

横長で見にくいですが、スクリーンショットをそのまま掲載します。

TableView Scroll

3.関数追加

スクロール関数を追加し、それをデータ更新時に呼び出すようにしました。

フォーラムの内容とはちょっと違いますが、試行錯誤の結果、下記のようなコードとしました。

関数は下記の通りです。(これもスクリーンショットです)

Codes

tv: スクロール対象のTableView

rowNum: スクロールポジション(トータルゲーム数)

s_pos: スクロール位置(TOP=1,MIDDLE=2,BOTTOM=3)

※トータルゲーム数は、次のゲーム数を指しているため、そのまま指定してしまうと配列範囲オーバーとなり、abortエラーとなります。

 そのため、-1する必要がありました。

※また、(ここには記載しませんが)呼び出しは、TavleViewのreload後に実行させる必要があります。

 スクロールさせた後reloadすると、これもまたシステムエラーとなります。これは原因がまだよくわかっていません。

4.実行結果

アプリ実行で、CSVファイルからデータを読み出し、一覧を表示しますが、その時に、最終データまでスクロールするようになりました。

今までは、8つのTableViewをいちいち手動でスクロールさせて表示させていたんです。

(今思えば、TableViewを8つも使うような構成にすべきでなかったのですが・・・)

実行結果

データ追加時の動作は未確認ですが、それは、来週初めの今年初ボウリング時のスコアを登録するときに実行、確認してみます。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

全体

前の記事

Mynaportal app is difficult to use
Bowling

次の記事

Bowling Score Update Jan.15/’24