トップ画像
1. 一からアンドロイド開発をして思った、知っておくべきこと~Fragment編~

執筆者: オキリョウ

最終更新: 2021/03/08

こんにちは、オキリョウと申します!
このシリーズでは私が初めてAndroidアプリ(下のURLのやつ)を作成した時に「最初から知っておきたかったな・・・」と感じたことを書いていきたいと思います。
 
是非見ていってください↓↓↓
https://play.google.com/store/apps/details?id=com.wsr.shopping_friend

今回紹介するのは「Fragment」です。
 

Activityとは

Fragmentが何なのかを紹介する前に、まずActivityについて書きたいと思います。
このActivityというのは、Androidのアプリにてメインで動く部分です
おそらくAndroidの入門記事を読むと、MainActivityというファイルにコードを書いていると思います。このMainActivityというのがActivityの一種です。
 
まだまだひよっこだった私は様々な入門記事を読み漁りました。そういった入門記事のほとんどはそこまで複雑なことをしないものですからMainActivityにコードを書いています。
それを見た私は「Activityに全部書くんだな」と勝手に思い、全部書き込んでしまいました。

全部書いてしまうことの欠点

実は全部の処理をActivityに書くのはそこまでいいわけではありません。Activityに書いてしまうと使いまわしが出来なくなるからです。下の画像を見てみてください。

こちらは実際に作ったAndroidアプリとなります。

左の画面にあるボタンをクリックすると右の画面に遷移するのですが、共通部分がありますね。写真には撮りませんでしたが、一番下の空白、そこも広告が入るので共通部分となります。

これらを全てActivityで書いてしまうと、画面遷移前と画面遷移後、どちらのプログラムコードにもこれらの記述を書く必要があり、非常に面倒です。

面倒なだけならいいですが、実装できなくなる例もあります。例えばBottom Navigation Barを実装するときにActivityに全部書くと、Googleが用意してくれているやつが使えなくなるので血の涙を流すことになります。

Fragment君 

Activityに全部書くのは非効率で、使えるものも制限されてしまうことが分かったと思います。
ではどのようにすればいいのでしょうか?

ここで冒頭のFragmentが登場します。Fragmentとはその名の通り、パーツを指します。Acitivityというメイン画面に使えるパーツというわけですね。

このFragment、何と簡単に差し替えることが出来ます。
AcitivityにFragmentを置く場所を置いておけば、あとは変え放題です。
つまり、共通部分はActivityに、違う部分はFragmentにおいてやれば再利用が出来ます。

もっと言えば、Fragmentは差し替えるものということで設計されているので、簡単にわかりやすく変えることが出来ます。
詳しくはNavigationで検索しましょう。一応参考URLも貼っておきます
https://qiita.com/tktktks10/items/7df56b4795d907a4cd31

まとめ

Fragmentを実装すること自体はたいして難しいものではありません。調べればある程度の資料は出てくると思います。ですので、しっかり調べて、どのような時にFragmentを使うのかなど知っておくのがベストだと思います。
ちなみに私はFragmentについて知った後、アプリをごっそり書き換えました…皆さんも気を付けましょう。

取得に失敗しました

2020年度 入部

Twitter GitHub