2015-04-01 16 views
11

Tôi có trình đếm date mới được triển khai trong một đoạn. Điều này được bao bọc trong một scrollview. Khi cố gắng sử dụng datepicker tôi phải bấm và giữ một nơi nào đó trên màn hình trước khi tôi có thể di chuyển qua calader datepickers để nói có thể.Android 5.0 Datepicker trong scrollview không hoạt động (không cuộn tháng)

có cách nào để sửa lỗi này không?

im sử dụng timepicker này: enter image description here

Và im tải nó như thế này:

<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/scrollView2" 
    android:layout_row="11" 
    android:fillViewport="true" 
    android:background="#162229" 
    android:layout_column="2" 
    android:paddingBottom="20dp"> 
<LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:gravity="center" 
    android:background="#162229" 

    android:orientation="vertical" > 

    <DatePicker 
     android:id="@+id/datePicker1" 
     android:layout_width="wrap_content" 
     android:background="#162229" 
     android:calendarTextColor="#fff" 
     android:layout_height="wrap_content" 

     android:calendarViewShown="false" > <!-- style="@style/date_picker_style" --> 
    </DatePicker> 
</LinearLayout> 
</ScrollView> 
+0

tôi đã cùng một vấn đề, tiếc là tôi đã phải sử dụng một DatePickerDialog và nó hoạt động mà không cần bất kỳ vấn đề. [Ví dụ hay] (http://pulse7.net/android/date-picker-dialog-time-picker-dialog-android/) và [ví dụ khác] (http://androidopentutorials.com/android-datepickerdialog-on- edittext-click-event /) – Juancho

+2

tôi cũng gặp vấn đề tương tự. Lúc đó tôi đã sử dụng ** bold'android: datePickerMode = "spinner" '** để tránh sự cố. Nhưng nhìn và cảm nhận sẽ không nhận được – Sanu

+0

Tôi đoán tốt nhất là cha mẹ scrollview đang bẫy các cử chỉ và họ cần phải được xử lý bởi DatePicker trước khi ScrollView được chúng. Tôi sợ tôi có thể gió lên chỉ cần đi với các tùy chọn DatePickerDialog là tốt. –

Trả lời

0

Điều này là do các thành phần cha mẹ scrollview. Xóa chế độ xem cuộn hoặc sử dụng hộp thoại bộ chọn ngày.

13

Tạo một lớp mà kéo dài DatePicker và ghi đè lên các phương pháp sau đây:

@Override 
public boolean onInterceptTouchEvent(MotionEvent ev) 
{ 
    if (ev.getActionMasked() == MotionEvent.ACTION_DOWN) 
    { 
     ViewParent p = getParent(); 
     if (p != null) 
      p.requestDisallowInterceptTouchEvent(true); 
    } 

    return false; 
} 

Nó sẽ hoạt động tốt. nguồn: here

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