🦋

flutter macOSでのEcharts Scatter3Dに挫折する

2024/11/10に公開

せっかくFlutterなのだから

還暦過ぎて始めた開発生活。
老眼の身だから、実はスマホがキライ。
iPadProが好き。あとはもちろんMac。
でもいろんな人から、いやパソコンもiPadも持ってないから、と言われて、
仕方ない、、、、という感じでスマホアプリに取り組んでいる。
でもせっかくFlutterなのだ。
縦長スマホサイズと、横位置iPad layoutを切り替える技術も身につけたし、
ウェブ版はすでに稼働中だから、
ついでにmacOSにも挑戦するか\(^O^)/

macOS(desktop)で走らせてみる

あらあ・・・真っ赤だわ。
まあ、これが出るのは、前にもやったことがあるので、知っている。とりあえず無視。

objc[15803]: Class XROS1_0SimRuntime is implemented in both /Library/Developer/CoreSimulator/Volumes/xrOS_21N5207f/Library/Developer/CoreSimulator/Profiles/Runtimes/xrOS 1.0.simruntime/Contents/MacOS/xrOS 1.0 (0x1126f80e0) and /Library/Developer/CoreSimulator/Volumes/xrOS_21N5165g/Library/Developer/CoreSimulator/Profiles/Runtimes/xrOS 1.0.simruntime/Contents/MacOS/xrOS 1.0 (0x1141a00e0). One of the two will be used. Which one is undefined.
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, id:00006001-000260942E09801E, name:My Mac }
{ platform:macOS, arch:x86_64, id:00006001-000260942E09801E, name:My Mac }

次に出たのは、「これ、未確認のプロジェクトですけど、開けていいですか」っぽいPopUp。
Macは、これ多いよね、疑い深い、まあ、その分、安心、ということにする。

Background color is not yet supported on macOS.

そんなもの指定していませんが、と思ったんだが、
背景画像として以下の設定をしているのが気に入らないらしい。

 body: Container(
        constraints: const BoxConstraints.expand(),
        decoration: const BoxDecoration(
          image: DecorationImage(
            image: AssetImage('assets/images/sea.png'),
            fit: BoxFit.cover,
          ),
        ),

ので、これを以下のように直す。

body: DecoratedBox(
    decoration: const BoxDecoration(
      image: DecorationImage(
        image: AssetImage('assets/images/sea.png'),
        fit: BoxFit.cover,
      ),
    ),

これでErrorが一つ消える。

よし、この調子で一つ一つ潰していくぞ〜、と思ったが

ちょっと手に負えなくなってきました。
とくに

'child == _child': is not true

で、すっかりやる気をなくしました。
そんなに複雑な入れ子をしたりしているわけではないのです。
そして、これが出るのはScatter3Dを使っているPageだけ。
そこは、さっき直した背景画像の上にEcahrtsを載せているだけ。
つまりなにかが重複しているとしたら、それはEcartsの詳細だということでしょう。

そこをいじる気力は、いまちょっとない。

ほかのPageはきれいに動いてるんですけどねえ・・・・
惜しい。
flutter_echartsはmacOSをサポートしてるんだけどなあ・・・
でもやり過ぎて動かなくなったら困るので・・・
幸い、すでに行ったいくつかの修正は、iOSやandroidの挙動になんの悪影響もないから
いったん、撤退。
またいつか、挑戦意欲の湧いている日に、トライします。

実はすごい簡単だったりして・・・

Flutter大学

Discussion