نوار برنامه را تنظیم کنید

روش Compose را امتحان کنید
Jetpack Compose جعبه ابزار UI توصیه شده برای اندروید است. با نحوه افزودن کامپوننت در Compose آشنا شوید.

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

تصویری که نوار برنامه را در برنامه Now in Android نشان می دهد
شکل 1. نوار برنامه با نماد عمل در برنامه "اکنون در اندروید".

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

از سوی دیگر، ویژگی‌هایی به نسخه Toolbar کتابخانه AndroidX AppCompat اضافه شده است، به این معنی که این ویژگی‌ها در دستگاه‌هایی که از کتابخانه‌های 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);
    }
    

اکنون برنامه شما دارای یک نوار اقدام اساسی است. به طور پیش فرض، نوار اقدام حاوی نام برنامه و یک منوی سرریز است که در ابتدا حاوی آیتم تنظیمات است. می‌توانید اقدامات بیشتری را به نوار عملکرد و منوی سرریز اضافه کنید، همانطور که در Add and handle actions توضیح داده شده است.

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

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

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