Ở hình thức cơ bản nhất, thanh thao tác sẽ hiển thị tiêu đề của hoạt động trên một và một trình đơn mục bổ sung ở bên còn lại. Ngay cả ở dạng cơ bản này, thanh ứng dụng cũng cung cấp thông tin hữu ích cho người dùng và mang lại giao diện nhất quán cho các ứng dụng Android.
![Hình ảnh cho thấy thanh ứng dụng trong ứng dụng Now in Android](https://developer.android.google.cn/static/images/ui/notifications/actions_actionbar.png?authuser=19&hl=vi)
Tất cả các hoạt động sử dụng giao diện mặc định đều có
ActionBar
dưới dạng ứng dụng
thanh. Các tính năng của thanh ứng dụng được thêm vào ActionBar
gốc qua nhiều
Các bản phát hành Android. Do đó, ActionBar
gốc sẽ hoạt động theo cách khác
tuỳ thuộc vào phiên bản Android mà thiết bị đang sử dụng.
Mặt khác, các tính năng được thêm vào phiên bản thư viện AndroidX AppCompat
Toolbar
,
tức là những tính năng đó có sẵn trên thiết bị sử dụng thư viện AndroidX.
Sử dụng lớp Toolbar
của thư viện AndroidX để triển khai các hoạt động
thanh ứng dụng vì lý do này. Khi sử dụng thanh công cụ của thư viện AndroidX, bạn sẽ
nhất quán trên nhiều loại thiết bị nhất.
Thêm Thanh công cụ vào Hoạt động
Các bước sau mô tả cách thiết lậpToolbar
làm thanh ứng dụng cho hoạt động của bạn:
- Thêm thư viện AndroidX vào dự án của bạn như được mô tả trong Tổng quan về AndroidX.
- Đảm bảo hoạt động mở rộng
AppCompatActivity
:Kotlin
class MyActivity : AppCompatActivity() { // ... }
Java
public class MyActivity extends AppCompatActivity { // ... }
- Trong tệp kê khai ứng dụng, hãy đặt giá trị
<application>
để sử dụng một trong các phần tử AppCompatNoActionBar
giao diện, như được trình bày trong ví dụ sau. Việc sử dụng một trong các chủ đề này sẽ ngăn chặn ứng dụng của bạn bằng cách sử dụng lớpActionBar
gốc để cung cấp thanh ứng dụng.<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- Thêm
Toolbar
vào bố cục của hoạt động. Ví dụ: như sau mã bố cục thêmToolbar
và làm cho mã này trông giống như quảng cáo nổi phía trên hoạt động:<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"/>
Xem Thông số kỹ thuật của Material Design để biết các đề xuất về độ cao của thanh ứng dụng.
Đặt thanh công cụ ở đầu hoạt động layout, vì bạn đang sử dụng nó dưới dạng thanh ứng dụng.
- Trong phần hoạt động
onCreate()
phương thức, hãy gọi phương thức của hoạt độngsetSupportActionBar()
phương thức và chuyển thanh công cụ của hoạt động như minh hoạ trong ví dụ sau. Chiến dịch này phương thức đặt thanh công cụ làm thanh ứng dụng cho hoạt động.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); }
Ứng dụng của bạn hiện đã có một thanh thao tác cơ bản. Theo mặc định, thanh tác vụ sẽ chứa tên của ứng dụng và một trình đơn mục bổ sung, ban đầu chứa mục Settings (Cài đặt). Bạn có thể thêm các thao tác khác vào thanh tác vụ và trình đơn mục bổ sung, như được mô tả trong Thêm và xử lý các thao tác.
Sử dụng các phương thức tiện ích trên thanh ứng dụng
Sau khi đặt thanh công cụ làm thanh ứng dụng của hoạt động, bạn sẽ có quyền sử dụng tiện ích
do thư viện AndroidX cung cấp
ActionBar
. Phương pháp này cho phép bạn làm những việc hữu ích, chẳng hạn như ẩn và hiện thanh ứng dụng.
Để sử dụng các phương thức tiện ích ActionBar
, hãy gọi phương thức của hoạt động
getSupportActionBar()
. Phương thức này trả về tham chiếu đến một đối tượng AppCompat ActionBar
.
Sau khi có tệp đối chiếu đó, bạn có thể gọi bất kỳ phương thức ActionBar
nào
để điều chỉnh thanh ứng dụng. Ví dụ: để ẩn thanh ứng dụng, hãy gọi
ActionBar.hide()
.