androidアプリ開発の初学者です。
アプリのエントリポイントとしてonCreateメソッドから始まることは理解したのですが、ネットで見たコードにはonCreateが書いていないのに動いているアプリがありました。
エントリポイントはonCreate以外にもあるということでしょうか?
エントリーポイントという言い方はあまり聞かないような…。それより、ライフサイクルかな。
https://developer.android.com/guide/components/activities/activity-lifecycle?hl=ja
android の前にクラス・メソッド・継承・オーバーライド等を先に勉強したほうが良いと思います。
ネットで見たというコードがどんなものかも分かりませんし。
> ネットで見たコードにはonCreateが書いていないのに動いているアプリがありました。
無ければ無いで、そのアプリの基底クラスのonCreateが使われているだけで、それで充分動くような構造のコードなのでは? それにしても、何となく疑問に思ってしまったように気軽に投稿するのは注意しましょう。そういう質問にはどう答えたら納得されるのか分かりづらいので、回答は避けられがちになります。
[質問するときのヒント] https://teratail.com/help/question-tips
ネットでみたコードはonViewCreatedから始まっていました。onViewCreatedの基底クラスにonCreateが入っているということでよろしいでしょうか。
> onViewCreatedの基底クラス
onViewCreated はメソッドであって、"メソッドの基底クラス"と言うモノはありません。
恐らくは Fragment のことかと思いますが。
> ~でよろしいでしょうか。
Android のソースコードは検索すれば見つかります。
> ネットでみたコードはonViewCreatedから始まっていました。onViewCreatedの基底クラスにonCreateが入っているということでよろしいでしょうか。
いえ、そう言う訳では無くて。そのご覧になったと言うのはFragmentのコードではないのですか? 色々と質問として不明瞭です。
もしかして、単純に onCreate や onCrrateView が最初に書いてあるから、とかそういうこと? 確かに、先に実行されるものを先に書くのは自然だけど、メソッドの順番は実行の順番とは無関係ですよ。
onCreate や onCrrateView がアクティビティやフラグメントのエントリーポイントと言われたら、違和感はあるけど気持ちはわかります。けど、「アプリのエントリーポイント」と言うのは間違い。一つのアプリは複数のアクティビティやフラグメントを持てるので。
「エントリーポイント」は入り口のことで、わざわざそのことぱを使うのは入り口がひとつしかない、または複数あっても一度にどれか一つしか使わないし、何度も出たり入ったりしない、というニュアンスがあります。
実際には onCreate や onCrrateView はアクティビティやフラグメントが生成されて破棄されるまでに呼ばれるさまざまなメソッドの一つにすぎないので、まずはライフサイクルを理解することをお勧めします。
あなたの回答
tips
プレビュー