[解決済み] Fragment ActionBarCompatの内部からgetSupportActionBarを取得する。
2022-05-17 08:14:26
質問
新しいプロジェクトで
AppCompat/ActionBarCompat
で
v7
のサポート・ライブラリです。私はどのようにしたら
getSupportActionBar
を使用する方法を考えています。フラグメントをホストする私のアクティビティは
ActionBarActivity
を拡張していますが、フラグメントのための同様のサポートクラスは見当たりません。
私のフラグメントの中から
public class CrimeFragment extends Fragment {
//...
getActivity().getSupportActionBar().setSubtitle(R.string.subtitle); // getSupportActionBar is not defined in the v4 version of Fragment
//...
}
使用するためのgoogleページ(
http://android-developers.blogspot.in/2013/08/actionbarcompat-and-io-2013-app-source.html
) によると
v4
フラグメントには変更を加えるべきではありません。をキャストする必要がありますか?
getActivity()
の呼び出しを
ActionBarActivity
? デザイン性が低いように思います。
どのように解決するのですか?
その後 Fragment.onActivityCreated(...) の後、getActivity()でアクセスできる有効なアクティビティが得られます。
ActionBarActivityにキャストして、getSupportActionBar()にコールする必要があります。
((AppCompatActivity)getActivity()).getSupportActionBar().setSubtitle(R.string.subtitle);
キャストは必要です。デザインが悪いのではなく、後方互換性があるのです。
関連
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] FragmentでonActivityResultが呼び出されない
-
[解決済み] 新しいAndroid Fragmentをインスタンス化するためのベストプラクティス
-
[解決済み] ViewPagerとフラグメント - フラグメントの状態を保存する正しい方法は何ですか?
-
[解決済み】フラグメント内のXML onClickを使用して、ボタンのクリックを処理する方法
-
[解決済み】Fragmentが自分自身を削除する、つまりfinish()に相当するものを取得するにはどうすればよいですか?)
-
[解決済み] runOnUiThread(フラグメント内
-
[解決済み] Android - タイトルバーに戻るボタンが表示される
-
[解決済み] Android 6.0でBluetooth Low Energyスキャンを使用するには位置情報を有効にする必要があります。
-
[解決済み] Error:No such property: GROUP for class: org.gradle.api.publication.maven.internal.ant.DefaultGroovyMavenDeployer
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Androidの連絡先リストを呼び出すには?
-
[解決済み] 深くネストされたスタックから離れるとき、Fragmentのバックスタックをクリーンアップする方法はこれで良いのでしょうか?
-
[解決済み] CardView layout_width="match_parent "が親のRecyclerViewの幅と一致しない。
-
[解決済み] Android - タイトルバーに戻るボタンが表示される
-
[解決済み] getApplication()、getApplicationContext()、getBaseContext()、someClass.thisの違いと使い分け。
-
[解決済み] カスタムレイアウトとEditTextを持つAlertDialog.Builderは、ビューにアクセスすることができません。
-
[解決済み] EclipseでADTを更新するにはどうしたらいいですか?
-
[解決済み] Genymotion、Mavericksで「Unable to load VirtualBox engine. VBoxは正しくセットアップされています。
-
[解決済み] RelativeLayoutレイアウトパラメータをxmlではなくコードで設定するには?
-
[解決済み] AndroidにおけるProgressive Web Appsとネイティブアプリの違いについて [終了しました]