AndroidにおけるActivity/ActionBarActivity/AppCompatActivityの区別と理解について
以前はEclipseを使ってAndroidを書いていたのですが、最近、やはりGoogleが推奨しているし、今後のトレンドでもあるので、Android Studioに乗り換えました。その過程で、Activityに関するいくつかの問題に遭遇したので、以下にその問題を説明します。
まず、新規プロジェクトを作成し、Minimum Required SDK は API14 :Android 4.0,(Icecream Sandwich) を選択、Target SDK と Compile With は API19: Android 4.4(KitKat) を選択、新規プロジェクト完了後、アプリケーションのスクリーンショットは以下のとおりです。 .
ご覧のように、メインインターフェイスの上部にActionBarが現れ、現在のActivityであるAndroidTestの名前が表示されています。これはEclipseの場合ですが、Android Studioの場合はどうでしょうか。
最初のAndroid Studioで新しいプロジェクトを作成し、アプリケーション名はAndroidTest、その後、プラットフォームとSDKの選択電話やタブレット:Android 4.0( IceCreamSandwich )、新しいの完了後、自動的にプロジェクトに新しいモジュールを作成します、名前はappです。ActionBarActivity is deprecated". ActionBarActivityは、非推奨です(deprecated")。これは、すでに非推奨である、もしくは、もう使うことは推奨されないという意味です。以下は、実行後のアプリケーションのスクリーンショットです。 . 相変わらずActionBarが上部に表示され、プロジェクト名AndroidTestがデフォルトで表示されていることがわかります。MainActivityが親クラスのActivityとActionBarActivityをそれぞれ継承していること以外は、Eclipseのプロジェクトと違いはありません。
Android開発においてClassの陳腐化は常にイライラさせられるので、以下ではASで継承されているActionBarActivityをActivity.に手動で変更し、対応するパッケージをインポートして、プログラム実行後のスクリーンショットを以下に示します。 スクリーンショットは以下の通りです。 上部のActionBarがなくなっているのがわかります。これはEclipseとは全く違う。Activityからも継承されていますが、インターフェイスのUIが違います。これが、Androidプロジェクトを開発する際のEclipseとASの違いの一つです。
ASでもActionBarを使いたい、すでに廃止されたActionBarActivityは使いたくないという場合、どのような解決策があるのでしょうか。AppCompatActivityを使用します。AppCompatActivityのMainActivityをASにインクルードし、対応するパッケージをインポートし、アプリケーションの実行のスクリーンショットを撮ります。 アプリケーション実行後のスクリーンショットを撮影しています。
今後、私たちのプロジェクトでは、Activityの継承する親クラスを手動で修正することで、ActionBarを表示するかどうかを決めることができます。 また、それ以外のアプリケーションへの影響はありません。同じコードでもEclipsehとAndroid Studioでは見え方がもっと違うので、別の扱いが必要です。
関連
-
よくあるJavaのエラー50選(その1)
-
AndroidStdioのインストール時に「メインクラスが見つからない com/intelligi/idea/Main」というエラーが発生する。
-
Android Studioプロジェクトをインポートすると、無効なgradle jdkコンフィギュレーションが見つかったと報告される
-
テスト、Eclipseは "エラーが発生しました、詳細はエラーログを参照してください。 java.lang.NullPointerException" を報告します。
-
-bash : gradlew コマンドが見つかりません。
-
Android ビューの階層構造
-
Android studioでTextViewのフォントを変更する2つの方法(例:模造歌、公式スクリプト)。
-
AndroidManifest.xml ファイルが見つからない 解決策
-
Android.view.InflateException: バイナリ XML ファイルの行番号 0: クラス <unknown> を展開する際のエラー 解決方法
-
APKのインストール: 失敗 [INSTALL_PARSE_FAILED_NO_CERTIFICATES]
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン