2010-10-02 37 views
20

Tôi có hình nền khoảng 100 x 100 mà tôi muốn căn giữa trong ứng dụng Android. Có cách nào để làm việc này không?Căn giữa hình nền trong Android

Tôi nghĩ rằng nó sẽ giúp ích rất nhiều với các thay đổi định hướng cho các ứng dụng đơn giản.

Trả lời

44

Bạn có thể sử dụng BitmapDrawable cho trường hợp. Tạo centered.xml trong res/drawable thư mục:

<bitmap xmlns:android="http://schemas.android.com/apk/res/android" 
    android:src="@drawable/your_image" 
    android:gravity="center"/> 

Sau đó, bạn có thể sử dụng centered drawable làm nền.

0

Câu hỏi cũ và câu trả lời có một điểm yếu lớn - chúng tôi không có khả năng thay đổi kích thước hình ảnh, điều đó có nghĩa là nó hoàn toàn phụ thuộc vào chúng tôi có thể vẽ được.

Trong khi sử dụng thư viện thiết kế Android mới nhất, gốc của chế độ xem hoạt động sẽ là CoordinatorLayout hoặc DrawerLayout và bố cục đó không có thứ bậc hiển thị mặc định, có nghĩa là chế độ xem con đầu tiên sẽ bị lu mờ bởi bất kỳ trang tiếp theo nào và thứ hai. .. để cuối cùng. Vì vậy, để có nền trung tâm Chúng ta cần phải thêm như con đầu tiên LinearLayout với hình ảnh trung tâm bên trong nó. Một số đoạn mã:

<android.support.v4.widget.DrawerLayout> 
<!-- first child --> 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center" 
    > 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="60dp" 
     android:src="@drawable/some_background" 
     /> 
</LinearLayout> 
... next view will be above 

Chúng tôi hoàn toàn có thể tùy chỉnh kích thước hình ảnh sẽ được làm trung tâm theo tùy chọn trọng lực LinearLayout. Quan trọng cũng phải có match_parent về chiều rộng và chiều cao LinearLayout, nhờ trung tâm đó cũng sẽ là trung tâm của chế độ xem gốc.

Điều tương tự có thể được thực hiện trong RelativeLayout hoặc bất kỳ bố cục nào khác cho phép chế độ xem con chồng chéo.

Các vấn đề liên quan