あなたはについて話す場合はActivity
、AppcompactActivity
、ActionBarActivity
などなど。
拡張している基本クラスについて話す必要があります。まず、スーパークラスの階層を理解する必要があります。
すべてのものは、これらすべてのクラスのスーパークラスであるContextから開始されます。
Contextは、Androidシステムによって実装が提供される抽象クラスです。これは、アプリケーション固有のリソースとクラスへのアクセスを可能にするだけでなく、アクティビティの起動、インテントのブロードキャストと受信などのアプリケーションレベルの操作のアップコールを可能にします。
Context
後に続く、または拡張される ContextWrapper
ContextWrapperが拡張クラスであるコンテキストというクラスを単純にすべての別のコンテキストへの呼び出しの代表者。元のコンテキストを変更せずに動作を変更するためにサブクラス化できます。
今、私たちはリーチします Activity
活動は、拡張するクラスですContextThemeWrapperをユーザーが行うことができ、単一、集中ものです。ほとんどすべてのアクティビティがユーザーと対話するため、Activityクラスがウィンドウを作成します
以下のクラスは拡張が制限されていますが、それらのディセンダーによって内部的に拡張され、特定のAPIをサポートします
SupportActivityは一緒に互換機能を構成するための基本クラスであるアクティビティを拡張するクラスであります
BaseFragmentActivityApi14は拡張するクラスですSupportActivityを
それはクラス制限されている基本クラスですが、によって拡張され
BaseFragmentActivityApi16の機能をサポートするためにV14を
の
BaseFragmentActivityApi16を拡張するクラスである
BaseFragmentActivityApi14を {@codeの基本クラスである
FragmentActivity }使用できるようにV16の APIを。しかし、これも制限付きクラスですが、V16の機能をサポートするためにFragmentActivityによって拡張されています。
今FragmentActivty
の FragmentActivityは拡張するクラスです
BaseFragmentActivityApi16をし、それがサポートベースのフラグメントおよびLoader APIを使用したいと考えています。
新しいプラットフォームの組み込みフラグメントおよびローダーサポートではなく、このクラスを使用する場合は、 getSupportFragmentManager()
およびgetSupportLoaderManager()
メソッドをそれぞれ、これらの機能にアクセスます。
ActionBarActivityはサポートライブラリの一部です。サポートライブラリは、古いプラットフォームで新しい機能を提供するために使用されます。たとえば、ActionBarはAPI 11で導入され、デフォルトでアクティビティの一部です(実際にはテーマによって異なります)。対照的に、ActionBarはありません。に、古いプラットフォーム。そのため、サポートライブラリは、ActionBarの機能とUI を提供するActivity(ActionBarActivity)の子クラスを追加します
2015年 ActionBarActivityはサポートライブラリのリビジョン22.1.0で非推奨になりました。代わりにAppCompatActivityを使用する必要があります。
の AppcompactActivityは拡張するクラスです
FragmentActivityサポートライブラリアクションバーの機能を使用して活動の基本クラスです。
このクラスをアクティビティ用に拡張し、アクティビティテーマを次のように設定することで、APIレベル7以上で実行するときに、アクティビティにActionBarを追加できます。Theme.AppCompat
または同様のテーマ
私はこれら2つ1つ、2つを参照します
FragmentActivity
iesをホストすることはありません。ホストするのはのみですFragment
。新しいAndroidバージョンでは、Activity
クラス自体が更新され、直接ホストされます。古いバージョンをサポートするためFragmentActivity
に導入されました。