راه‌اندازی نوار برنامه

امتحان کردن روش Compose
Jetpack Compose جعبه‌ابزار واسط کاربر توصیه‌شده برای Android است. با نحوه افزودن مؤلفه‌ها در Compose آشنا شوید.

در ساده‌ترین شکل، نوار اقدام عنوان فعالیت را در یک طرف و منو سرریز را در طرف دیگر نمایش می‌دهد. حتی در این شکل ساده، نوار برنامه اطلاعات مفیدی به کاربران ارائه می‌دهد و به برنامه‌های Android ظاهر و احساسی یکپارچه می‌بخشد.

تصویری که نوار برنامه را در برنامه «اکنون در Android» نشان می‌دهد
شکل ۱. نوار برنامه با نماد کنش در برنامه «اکنون در Android».

همه فعالیت‌هایی که از زمینه پیش‌فرض استفاده می‌کنند، دارای ActionBar به‌عنوان نوار برنامه هستند. ویژگی‌های نوار برنامه در نسخه‌های مختلف Android به ActionBar بومی اضافه شده است. درنتیجه، ActionBar بومی بسته به اینکه دستگاه از کدام نسخه Android استفاده می‌کند، رفتار متفاوتی دارد.

ازسوی‌دیگر، ویژگی‌ها به نسخه AndroidX AppCompat library از Toolbar اضافه می‌شوند، یعنی این ویژگی‌ها در دستگاه‌هایی که از کتابخانه‌های AndroidX استفاده می‌کنند دردسترس هستند.

به همین دلیل، از کلاس Toolbar کتابخانه AndroidX برای پیاده‌سازی نوارهای برنامه فعالیت‌هایتان استفاده کنید. استفاده از نوارابزار کتابخانه AndroidX باعث می‌شود رفتار برنامه‌تان در گسترده‌ترین طیف دستگاه‌ها سازگار باشد.

افزودن نوارابزار به فعالیت

این مراحل نحوه تنظیم Toolbar را به‌عنوان نوار برنامه فعالیت شما شرح می‌دهند:
  1. کتابخانه AndroidX را به پروژه‌تان اضافه کنید، همان‌طور که در نمای کلی AndroidX شرح داده شده است.
  2. مطمئن شوید فعالیت AppCompatActivity را گسترش می‌دهد:

    کاتلین

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

    جاوا

    public class MyActivity extends AppCompatActivity {
      // ...
    }
  3. در مانیفست برنامه، عنصر <application> را طوری تنظیم کنید که از یکی از زمینه‌های NoActionBar AppCompat استفاده کند، همان‌طور که در مثال زیر نشان داده شده است. استفاده از یکی از این زمینه‌ها مانع از این می‌شود که برنامه از کلاس 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"/>

    برای توصیه‌های مربوط به ارتفاع نوار برنامه، مشخصات طراحی مواد را ببینید.

    نوارابزار را در بالای چیدمان فعالیت قرار دهید، زیرا از آن به‌عنوان نوار برنامه استفاده می‌کنید.

  5. در روش onCreate() فعالیت، روش setSupportActionBar() فعالیت را فراخوانی کنید و نوارابزار فعالیت را ارسال کنید، همان‌طور که در مثال زیر نشان داده شده است. این روش نوارابزار را به‌عنوان نوار برنامه برای فعالیت تنظیم می‌کند.

    کاتلین

    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))
    }

    جاوا

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

اکنون برنامه‌تان نوار اقدام پایه دارد. به‌طور پیش‌فرض، نوار اقدام حاوی نام برنامه و منوِ سرریز است که در ابتدا حاوی مورد تنظیمات است. می‌توانید کنش‌های بیشتری به نوار کنش و منو سرریز اضافه کنید، همان‌طور که در افزودن و مدیریت کنش‌ها شرح داده شده است.

استفاده از روش‌های کاربردی نوار برنامه

وقتی نوارابزار را به‌عنوان نوار برنامه فعالیت تنظیم کردید، به روش‌های کاربردی ارائه‌شده توسط کلاس ActionBar کتابخانه AndroidX دسترسی دارید. این رویکرد به شما امکان می‌دهد کارهای مفیدی انجام دهید، مانند پنهان کردن و نمایش دادن نوار برنامه.

برای استفاده از روش‌های سودمند ActionBar، روش getSupportActionBar() فعالیت را فراخوانی کنید. این روش ارجاعی به شیء AppCompat ActionBar برمی‌گرداند. وقتی آن مرجع را داشته باشید، می‌توانید هرکدام از روش‌های ActionBar را برای تنظیم نوار برنامه فراخوانی کنید. برای مثال، برای پنهان کردن نوار برنامه، ActionBar.hide() را فراخوانی کنید.