アプリバーをセットアップする

Compose を試す
Jetpack Compose は、Android に推奨される UI ツールキットです。Compose にコンポーネントを追加する方法を学習します。
<ph type="x-smartling-placeholder"></ph> アプリバー →

最も基本的な形式では、アクションバーはデバイス上にアクティビティのタイトルを表示します。 オーバーフローメニューがありますこの基本的な形式であっても、アプリバーには Android アプリのデザインに一貫性をもたらします。

Now in Android アプリのアプリバーを示す画像
図 1. 「Now in Android」にアクション アイコンが表示されたアプリバー。
で確認できます。

デフォルトのテーマを使用するすべてのアクティビティに アプリとしての ActionBar 表示されます。アプリバーの機能は、さまざまなタイプでネイティブ ActionBar に追加されます。 Android リリース。その結果、ネイティブ ActionBar の動作が変わります Android のバージョンに応じて異なります

一方、AndroidX AppCompat ライブラリのバージョン Toolbar, つまり、これらの機能は AndroidX ライブラリを使用するデバイスで利用できます。

AndroidX ライブラリの Toolbar クラスを使用して、アクティビティを実装する アプリバーを使用するためです。AndroidX ライブラリのツールバーを使用すると、アプリの 動作を保証します。

アクティビティへのツールバーの追加

Toolbar をアクティビティのアプリバーとして設定する手順は以下のとおりです。 <ph type="x-smartling-placeholder">
    </ph>
  1. プロジェクトに AndroidX ライブラリを追加する AndroidX の概要
  2. アクティビティの延長を確認する AppCompatActivity:

    Kotlin

    class MyActivity : AppCompatActivity() {
      // ...
    }
    

    Java

    public class MyActivity extends AppCompatActivity {
      // ...
    }
    
    <ph type="x-smartling-placeholder">
  3. アプリ マニフェストで、 <application> 要素を使用して、AppCompat の NoActionBar 複数のテーマを設定できます。これらのテーマのいずれかを使用すると ネイティブの ActionBar クラスを使用してアプリバーを提供できないようにします。
    <application
        android:theme="@style/Theme.AppCompat.Light.NoActionBar"
        />
    
  4. アクティビティのレイアウトに Toolbar を追加します。たとえば、次のようになります。 レイアウト コードにより Toolbar が追加され、フローティングのように見えます。 アクティビティの上に
    <androidx.appcompat.widget.Toolbar
       android:id="@+id/my_toolbar"
       android:layout_width="match_parent"
       android:layout_height="?attr/actionBarSize"
       android:background="?attr/colorPrimary"
       android:elevation="4dp"
       android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
    

    詳しくは、 マテリアル デザインの仕様 をご覧ください。

    ツールバーをアクティビティの一番上に配置する。 layout を使用します。 アプリバーとして表示できます。

  5. アクティビティの onCreate() メソッドを呼び出し、アクティビティの setSupportActionBar() メソッドを呼び出し、アクティビティのツールバーを渡します。以下の例をご覧ください。この メソッドはツールバーをアクティビティのアプリバーとして設定します。

    Kotlin

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_my)
        // The Toolbar defined in the layout has the id "my_toolbar".
        setSupportActionBar(findViewById(R.id.my_toolbar))
    }
    

    Java

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
        setSupportActionBar(myToolbar);
    }
    

これで、アプリに基本的なアクションバーが追加されました。デフォルトでは、アクションバーには オーバーフロー メニュー(最初に [Settings] 項目を含む)が表示されます。 アクションバーとオーバーフロー メニューには、その他のアクションを追加できます。詳しくは、 アクションを追加して処理する

アプリバー ユーティリティ メソッドを使用する

ツールバーをアクティビティのアプリバーとして設定すると、ユーティリティにアクセスできるようになります。 AndroidX ライブラリの ActionBar クラスです。この方法により、アプリバーの表示と非表示の切り替えなど、便利な機能が可能になります。

ActionBar ユーティリティ メソッドを使用するには、アクティビティの getSupportActionBar() メソッドを呼び出します。このメソッドは、AppCompat ActionBar オブジェクトへの参照を返します。 参照を取得したら、任意の ActionBar メソッドを呼び出すことができます。 アプリバーを調整します。たとえば、アプリバーを非表示にするには、 ActionBar.hide()