2014-04-14 16 views
5

Tôi đang cố gắng để mở rộng một ngang LinearLayout chứa DatePickerTimePicker thêmScaling một cái nhìn làm giảm kích thước nội dung nhưng làm tăng lợi nhuận trống

android:scaleX="0.6" 
android:scaleY="0.6" 

Vấn đề là điều này quy mô nội dung nhưng làm tăng lợi nhuận tại cùng một lúc, vì vậy tôi không thể sử dụng không gian đúng cách. Trong bức tranh vùng trắng được đánh dấu là không gian đạt được bằng cách mở rộng quy mô, nhưng tôi không thể sử dụng không gian này (trong thực tế, đồng hồ ở bên phải được cắt)

Screenshot

<LinearLayout 
    android:orientation="horizontal" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:scaleX="0.6" 
    android:scaleY="0.6"> 

    <DatePicker 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/datePicker" 
     android:layout_gravity="center_horizontal" 
     android:calendarViewShown="false" 
     android:spinnersShown="false" 
     android:layoutMode="opticalBounds" 
     android:measureAllChildren="true" /> 

    <TimePicker 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/timePicker" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginBottom="5dp" /> 
</LinearLayout> 

Bất kỳ giải pháp để mở rộng quan điểm mà không có vấn đề không gian trống này?

+0

Ảnh đã được chụp bằng bản xem trước IDE chưa? –

+0

@asafgitai yes là từ bản xem trước IDE – AndreaF

+2

Trong trường hợp đó, sự cố có thể chỉ liên quan đến bản xem trước bộ chọn trước Holo. Sự cố này có xảy ra với bạn trên các thiết bị thực không? Nếu có thì nó cũng xảy ra với người hái Holo? http://i.stack.imgur.com/TGYQ5.png –

Trả lời

2

Tôi khuyên bạn không nên sử dụng xscale & yscale. Thay vào đó, những gì bạn có thể làm là cung cấp trọng lượng cho bộ chọn ngày & bộ chọn thời gian.

<LinearLayout 
    android:orientation="horizontal" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_gravity="center_horizontal"> 

    <DatePicker 
     android:layout_width="0dp" 
     android:layout_height="match_parent" 
     android:layout_weight="50" 
     android:id="@+id/datePicker" 
     android:layout_gravity="center_horizontal" 
     android:calendarViewShown="false" 
     android:spinnersShown="false" 
     android:layoutMode="opticalBounds" 
     android:measureAllChildren="true" /> 

    <TimePicker 
     android:layout_width="0dp" 
     android:layout_height="match_parent" 
     android:layout_weight="50" 
     android:id="@+id/timePicker" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginBottom="5dp" /> 
</LinearLayout> 

bạn có thể thêm đệm ở hai bên hoặc sửa đổi trọng số theo cách bạn muốn.

+0

Điều này không hoạt động. Các khung nhìn DatePicker và TimePicker sẽ chồng lên nhau hoặc không được hiển thị đầy đủ nếu chúng không vừa trên màn hình thiết bị. – starkej2

+0

Điều này thật tuyệt vời! Cảm ơn bạn! – Alexander

1

Sò sẽ không thay đổi kích thước điều khiển của bạn có nghĩa là bộ chọn dữ liệu của bạn sẽ chiếm cùng một không gian trong bố cục của bạn bất kể nó bị sập lên hay xuống. chỉ những thay đổi về sự hiện diện của người này

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