およろずスマートフォン用の表示で見るやおよろずゆるふわな内容を書いても良い。そんな自由度の高いブログをめざします。ために書いたものです。スマブラしていたら体調を崩しました。はじめに体重ってあるじゃないですか。今年は流石にいい加減健康にならなくては、というケツイを胸に抱き、減量のため努力しました。6~8月で78kgくらいから69kgくらいまでがっつり落ちた6月の減少の仕方が凄いですよね。自分でもよく頑張ったなぁと思うと共に、こんなに効果があるものか、と驚いた出来事でもありました。こんなに急激な減量に成功したかと言いますと。間食や晩酌の数を減らしたと言うのももちろんあるのですが、とりわけ心の支えだったのが...SUBWAY!!!!はい、SUBWAYです。昼食として野菜を上限*1にしたサンドイッチを食べ続けたのが、かなり効果的だったと思います。トッピング・ドレッシングの変更などもできるので、はじめ数ヶ月は飽きること無くずっとSUBWAYに通い詰めていました。...とは、言ったものの。そんな状態がずっと続くわけでもなく。9月以降の中盤の伸びが怪しい9月あたりからSUBWAYに行くことがなくなり始め、身体も徐々に緩んでくるようになりました。それが徐々にもの足らなくなり食べる量が増え...と、完全に堕落の一途をたどっている今日この頃です。健康面などを考慮して、SUBWAYモチベをもう少し高めたい気になりました。本題と言うわけで、SUBWAYのメニューからカスタマイズしたい内容を選択したらその結果のカロリーとお値段がわかるスマホアプリを作りました。github.comデモ以下は、作るまでの流れなどを軽く書いておきます。調査SUBWAYは結構丁寧にカロリー表示してくれています。栄養情報PDF:https://www.subway.co.jp/menu/pdf/eiyo.pdfこのデータを見ると、サンドイッチ全体(全部お勧め設定)のカロリーパンのカロリードレッシングのカロリーがわかります。野菜+具のカロリーは単純な引き算で計算できそうです。...で、野菜って結局何カロリーあるんだ?と言う話なんですが。結論から言うと、ここが良くわかりませんでした。一部メニューはトッピングとして具のカロリーが記載されているのでその値から野菜のカロリーを逆算する手も考えましたが、いまいち帳尻の合う値になら無くて挫折(多分トッピングorメインで枚数なり分量なり違う)。(English)日本とは野菜の種類が異なり、にんじんの項目が存在しないし、そもそも同じ名前のサンドイッチでもカロリーが異なる*3し、どのくらい真に受けて良いのかわかりません。kcalで計上されているようでした。結局は何が正しいのかは良くわからないので、レタスとトマトは他の野菜より2倍程度カロリーが多いレタス・トマト・にんじん・ピーマン・レッドオニオンを入れると15kcalくらいになる*4という思い切った仮定をおいて、レタス・トマト=4kcal、にんじん・ピーマン・レッドオニオンを2kcalとして計算し、野菜以外の具のカロリーを算出することにしました。使われているパンと野菜を目力で推定して入れています*5。雰囲気分かれば良いよねと割り切って実装をしていきます。実装カロリーの値を決める所まででかなり大変になりましたが、実装です。react-nativeでガシガシ書きました。react-native-label-selectを使っています。実は、複数選択させる方はかなり鬼門でした。はじめはreact-native-multiple-selectを使うつもりだったのですが、どうあがいても自環境では文字が表示されなくて、label-selectに突貫工事で書き換えています。v15.5以降では動きません。結局、node_modules下のsrcファイルを修正PRと同じように書き換えて動作させています。おわりにまだまだ実用にはほど遠いですが、せっかくだし一回くらいスマホアプリ作りたかった、という欲求を少しだけ満たせて楽しかったです。具材の写真とか載せたい(でもPicker/label-selectの仕様的にむずそう)野菜全部、はオプションでワンクリックで設定させたい野菜の分量でちょこっとカロリー増減させたい(厳密計算難しい領域だし大して変わらない気がするので優先度下げちゃった)リリースビルドしてスマホ単独で動作できるようにする季節限定メニューの内容を持ってこれるようにする(写真から目力で推定するところで詰むのでブレイクスルーが必要)*1:『野菜上限で」でお店の人にも通じます。量には個人差があります*2:カロリー的にSUBWAYと大差ないあたりを探すとこのあたりに行き着く*3:例えば日本のターキーブレストレギュラーサイズは264kcalですが、英語サイトの方では280kcal*4:海外で20kcalなら日本のはもう少し少ないだろう読み*5:常に野菜全部入れてたからローストビーフにトマト入ってないのにこの段階で気づきました。月別アーカイブはてなブログをはじめよう!yaoshimaxさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。