בצורה הבסיסית ביותר, סרגל הפעולות מציג את הכותרת של הפעילות בצד אחד ותפריט אפשרויות נוספות בצד השני. גם בצורה הבסיסית הזו, סרגל האפליקציה מספק מידע שימושי למשתמשים ומעניק לאפליקציות ל-Android מראה ותחושה עקביים.
בכל הפעילויות שמשתמשות בעיצוב ברירת המחדל, יש סרגל אפליקציות עם ActionBar. תכונות של סרגל האפליקציה מתווספות ל-ActionBar המקורי בגרסאות שונות של Android. כתוצאה מכך, התנהגות ActionBar משתנה בהתאם לגרסת Android שבה נעשה שימוש במכשיר.
לעומת זאת, תכונות נוספות לגרסה של Toolbar בספריית AndroidX AppCompat, מה שאומר שהתכונות האלה זמינות במכשירים שמשתמשים בספריות AndroidX.
לכן, כדי להטמיע את סרגלי האפליקציות של הפעילויות, צריך להשתמש במחלקה Toolbar של ספריית AndroidX. שימוש בסרגל הכלים של ספריית AndroidX מאפשר לאפליקציה להתנהג באופן עקבי במגוון רחב של מכשירים.
הוספת סרגל כלים לפעילות
בשלבים הבאים מוסבר איך להגדירToolbar כסרגל האפליקציות של הפעילות:
- מוסיפים את ספריית AndroidX לפרויקט, כמו שמתואר במאמר בנושא סקירה כללית של AndroidX.
- מוודאים שהפעילות נמשכת
AppCompatActivity:Kotlin
class MyActivity : AppCompatActivity() { // ... }
Java
public class MyActivity extends AppCompatActivity { // ... }
- בקובץ המניפסט של האפליקציה, מגדירים את הרכיב
<application>כך שישתמש באחד מהנושאים של AppCompatNoActionBarכמו בדוגמה הבאה. שימוש באחד מהעיצובים האלה מונע מהאפליקציה להשתמש במחלקה המקוריתActionBarכדי לספק את סרגל האפליקציה.<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- מוסיפים
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"/>
המלצות לגבי הגובה של סרגל האפליקציה מפורטות במפרט Material Design.
ממקמים את סרגל הכלים בחלק העליון של הפריסה של הפעילות, כי משתמשים בו כסרגל אפליקציות.
- בשיטה
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); }
באפליקציה יש עכשיו סרגל פעולות בסיסי. כברירת מחדל, סרגל הפעולות מכיל את שם האפליקציה ותפריט אפשרויות נוספות, שבתחילה מכיל את הפריט הגדרות. אפשר להוסיף עוד פעולות לסרגל הפעולות ולתפריט האפשרויות הנוספות, כמו שמתואר במאמר הוספה של פעולות וטיפול בהן.
שימוש בשיטות עזר בסרגל האפליקציות
אחרי שמגדירים את סרגל הכלים כסרגל האפליקציות של פעילות, מקבלים גישה לשיטות השירות שסופקו על ידי המחלקה ActionBar בספריית AndroidX. הגישה הזו מאפשרת לכם לבצע פעולות שימושיות, כמו להסתיר ולהציג את סרגל האפליקציות.
כדי להשתמש בשיטות השירות ActionBar, צריך להפעיל את השיטה getSupportActionBar() של הפעילות. השיטה הזו מחזירה הפניה לאובייקט ActionBar של AppCompat.
אחרי שיהיה לכם את ההפניה הזו, תוכלו להפעיל כל אחת מהשיטות של ActionBar כדי לשנות את סרגל האפליקציות. לדוגמה, כדי להסתיר את סרגל האפליקציות, קוראים ל-ActionBar.hide().