Tôi đã thực hiện rất nhiều câu trả lời ở đây có liên quan đến Thanh công cụ nhưng không có câu trả lời nào có thể giúp tôi.Thanh công cụ mở rộng với Chế độ xem tùy chỉnh không hiển thị với chiều rộng đầy đủ
Những gì tôi đang cố gắng đạt được là có một thanh công cụ mở rộng sẽ hiển thị biểu tượng, có thể là tên của Hoạt động/ứng dụng, nó sẽ có nút chuyển đổi/ngăn tác vụ ở bên phải sẽ hiển thị điều hướng- như ngăn kéo ở bên phải, một menu tràn với các tùy chọn khác như cài đặt và cũng là một tab điều hướng ở phía dưới cho phép người dùng di chuyển giữa các đoạn khác nhau (các ngày khác nhau trong một tháng).
Cách tôi đang cố gắng đạt được điều này là thông qua thanh công cụ. Đầu tiên tôi tạo thanh công cụ và thêm chế độ xem tùy chỉnh của mình.
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar_actionbar"
android:layout_width="match_parent"
android:layout_height="@dimen/min_double_toolbar_height"
app:theme="@style/ThemeOverlay.AppCompat.ActionBar"
android:minHeight="?attr/actionBarSize"
android:background="@color/primary"
app:contentInsetStart="0dp"
app:contentInsetEnd="0dp"
app:contentInsetLeft="0dp"
app:contentInsetRight="0dp"
android:clipToPadding="false"
>
<!-- ThemeOVerlay Makes sure the text and items are using solid colors-->
<include
android:layout_width="match_parent"
android:layout_height="72dp"
android:layout_gravity="bottom"
layout="@layout/day_navigation_tab"
/>
</android.support.v7.widget.Toolbar>
day_navigation_tab chỉ là một ngang với Hai quan điểm hình ảnh với Padding của 72dp (như bằng cách hướng dẫn) và một cái nhìn văn bản với trọng lượng bố trí thiết lập để 1 để nó kéo dài cho toàn bộ không gian có sẵn. Và chiều cao 72dp.
Bây giờ trong XML BaseActivity tôi bao gồm các thanh công cụ trong Framelayout của bối cảnh chính (nếu không thanh công cụ sẽ bao gồm toàn bộ màn hình cho một lý do nào đó đối với tôi (mất tôi lứa tuổi để figre mà ra))
<...ommited>
<FrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<include
android:id="@+id/toolbar"
layout="@layout/app_bar"
/>
</FrameLayout>
<!-- android:layout_gravity="start" tells DrawerLayout to treat
this as a sliding drawer on the left side for left-to-right
languages and on the right side for right-to-left languages.
If you're not building against API 17 or higher, use
android:layout_gravity="left" instead. -->
<!-- The drawer is given a fixed width in dp and extends the full height of
the container. -->
<fragment android:id="@+id/navigation_drawer"
android:layout_width="@dimen/navigation_drawer_width"
android:layout_height="match_parent"
android:layout_gravity="right"
android:name="alterway.agency.timeentry.NavigationDrawerFragment"
tools:layout="@layout/fragment_navigation_drawer"
app:layout="@layout/fragment_navigation_drawer"
/>
</android.support.v4.widget.DrawerLayout>
Tuy nhiên, khi tôi sử dụng thanh công cụ, tôi thổi phồng Menu trên actionBar trong onCreateOptionsMenu chế độ xem tùy chỉnh của tôi bị thu hẹp và sẽ không mở rộng cạnh của các tùy chọn đã tạo. Một hình ảnh dưới đây minh họa tốt hơn, Đó là ảnh chụp màn hình từ Chế độ xem thiết kế trong Android Studio. Hình chữ nhật màu vàng cho biết vị trí các mục tùy chọn sẽ được đặt. Màu tím biểu thị kích thước ban đầu trong DesignView. Màu đen cho biết kích thước khi chạy ứng dụng.
Cảm ơn sự giúp đỡ của bạn.
câu hỏi liên quan mà có thể có ích cho bất kỳ ai đi qua đây tìm cách để giải quyết một vấn đề tương tự:
- design - Support Toolbars custom view not using full width
- How do I set up an extended toolbar on Android L
How are you thêm thanh công cụ cho hoạt động? Bạn đang sử dụng 'setSupportActionBar (Thanh công cụ)'? –
@Lady_ari: Vâng tôi đang làm điều đó. Có cách nào khác không? Ngoài ra, nếu tôi muốn thêm Tiêu đề và biểu tượng, v.v., tôi có nên làm điều đó trước khi tôi đặt Thanh công cụ hay tôi nên sửa đổi đối tượng mà tôi nhận được khi tôi gọi getSupportActionBar()? –
Tôi nghĩ tốt hơn nên sử dụng 'getSupportActionBar()' để sửa đổi tiêu đề thanh công cụ, v.v. –