2009-12-17 21 views
13

Tôi đã theo ví dụ trong cho chia gradient: http://www.connorgarvey.com/blog/?p=34Làm thế nào để vẽ một biên giới ở phía trên của cách bố trí tuyến tính

tôi đã cố gắng vẽ một đường ngang ở dưới cùng của bố trí tuyến tính của tôi.

Đây là tuyến tính file layout của tôi:

 <LinearLayout android:id="@+id/test" android:layout_width="fill_parent" 
      android:layout_height="wrap_content> 

<ImageView android:id="@+id/icon1" 
    android:layout_width="32dip" 
    android:layout_height="32dip" 
/> 

Và tôi đã làm thêm

<View 
android:background="@drawable/black_white_gradient" 
android:layout_width="fill_parent" 
android:layout_height="1dp" 
android:layout_above="@id/test" 
/> 

Nhưng tôi không thấy bất kỳ dòng ở phía trên cùng của LinearLayout. Và khi tôi đi đến Chế độ xem phân cấp và xem anh ta Xem (đối với dấu tách hort), getWidth() là 0 trong khi getHeight() là 1.

Bạn có thể cho tôi biết tôi đang thiếu gì không?

Cảm ơn bạn.

+0

Bất kỳ ai có ý tưởng gì? – n179911

Trả lời

2

Tôi nghĩ rằng hướng có thể bị thiếu trong chế độ xem linearlayout gốc;

<LinearLayout android:orientation="vertical" 

Hoặc nếu bạn sử dụng RelativeLayout thay vì LinearLayout, bạn có thể đặt layout_alignParentBottom;

<View android:layout_alignParentBottom="true" 
4

Với mã bạn đã đăng, nó hoàn toàn ổn. Nhưng thực tế là kích thước là 1dp có thể không hiển thị. tăng kích thước hoặc như bạn muốn chỉ một dòng sử dụng dòng này drawable mặc định từ android

android:background="@android:drawable/divider_horizontal_bright" 
// this for white background only 

Tôi hy vọng điều này sẽ giúp bạn có được những gì bạn muốn

1

Nó sẽ không được hiển thị nếu chiều cao là 1dp. Hãy thử 2dp thay vì:

<View android:background="@drawable/black_white_gradient" android:layout_width="fill_parent" android:layout_height="2dp" android:layout_above="@id/test" />

1

Các viền đen chỉ được hiển thị nếu kích thước tối thiểu là 2dp. Thử xóa đường viền và đặt màu đồng nhất thành màu đen:

<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#000" /> 
</shape> 

Hơn bạn có thể sử dụng chiều cao 1dp một lần nữa.

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