Flutter: MacOSのデスクトップアプリで「The Scrollbar’s ScrollController has no ScrollPosition attached.」のエラー

結論:OS判定をして「ScrollBar」有りと無しのWidgetを出し分ける 

2022/4/7 Flutter エラー・バグ日記

 

Flutterを2.10.3にアップデートした後に、macOSアプリとしてビルドすると、今までエラーにならなかったリストビューで、上記エラーが発生。

 

本記事はライトな日記思考で書いているので、詳細説明はしておらず、基本、テキストのみで画像とかはあまり載せておりません。。m(_ _)m

解説記事ではないため、解決していない内容や、その時々の間違った解釈を述べてしまっている可能性が大いにありますので、何卒、ご了承ください。

 

アプリは落ちないが、コンソールに同じエラーが出続ける。。

 

リストビューに使用している「ScrollBar」が問題らしい。

 

「isAlwaysShown」は「false」にしているので、共通「controller」の設置有無は原因ではないはず。。

 

調べてみると、Flutter公式に、下記情報が掲載されていた。

 

 

※ググった結果、下記2つのイシュー情報を見つけ、そこからたどり着いた。

 

 

 

要は、デスクトップアプリの場合は、スクロールバーを自動設置してくれるようになったので、手動で設置してしまうと、二重になってエラーになるよ、ということらしい。

 

デスクトップ版だけ作る場合は便利だが、通常はネイティブアプリも作ると思うので、逆に面倒な気も。。

 

同じ公式ページ内にある「Migration guide」によると、

 

  • OS判定して、「ScrollBar」有りのWidgetと、無しのWidgetを出し分ける
  • 「ScrollConfiguration」クラスを修正して、自動スクロールバーを表示を「false」にする

 

といった対応策が提示されている。

 

確かにOS判定して、Widgetを出し分けたところ、無事、エラーは解消された。

 

 

\一般的なエラー対処法をまとめた記事はこちら/

 

リリースしたアプリ(全てFlutterで開発)

暗記用マーカー – シンプル穴埋め問題作成

Google Play で手に入れよう
Download on the App Store

 

超即ToDo –最短2タップで通知登録できるタスク管理アプリ

Google Play で手に入れよう
Download on the App Store

 

かんたんプリント管理:アラート・OCR文字認識・検索機能を搭載

Google Play で手に入れよう
Download on the App Store

 

シンプルメモ帳「BasicMemo」 – 文字カウント、ワンタッチ入力、タグ管理等の機能を搭載

Macのデスクトップ版もリリースしました。

Google Play で手に入れよう
Download on the App Store

 

個人アプリ開発で役立ったもの

おすすめの学習教材

超初心者向けでオススメな元Udemyの講座/

 

\Gitの基礎について無料で学べる/

 

おすすめの学習書籍

実用的image_pickerに関してかなり助けられた/

 

Dartの基礎文法を素早くインプットできる/


Dart入門 – Dartの要点をつかむためのクイックツアー

 

おすすめのソフトウェア

安くて高機能。アプリの独自ドメイン・紹介サイト構築に最適/

 

\アイコン作成・画面設計・クラウド保存…何でもできて超必須

 

おすすめのハードウェア

\リーズナブルな価格で検証端末を確保できる/

 

\目線の高さを調節しやすく、疲れにくい

 

\キータッチが超静音で心地よい/

 

おすすめのサポートアイテム

\部屋の中を仕切って、集中できる開発環境を作れる/

 

\部屋の中でも大き過ぎず、長時間座っても疲れない

 

\バグと格闘した後の肩こりを解消してくれる/

タイトルとURLをコピーしました