2016-01-20 23 views
6

Tôi đã tạo một hoạt động chứa một bản đồ, hình ảnh và chế độ xem văn bản khác và tôi đã thêm thẻ "scrollview" cho nó ... nhưng sau khi hoạt động bắt đầu, nó sẽ cuộn đến cuối trang tự động .... xin vui lòng cho tôi biết lý do tại sao điều này vui vẻ và làm thế nào để ngăn chặn nó hình thức di chuyển để kết thúc vì vậy tôi có thể di chuyển của bản thân mình.Android ScrollView tự động cuộn xuống cuối chế độ xem

đây là mã của tôi:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:orientation="vertical" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context="com.radikallab.earch.DetailsActivity" 
android:background="@drawable/background10"> 


<LinearLayout 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 


    <TextView 
     android:id="@+id/title" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textSize="25dp" 
     android:text="Title" 
     android:textStyle="italic"/> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:src="@drawable/background4" 
     android:id="@+id/iv"/> 


    <TextView 
     android:id="@+id/rat" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textSize="20sp" 
     android:text="Title" 
     android:textStyle="italic"/> 

    <TextView 
     android:id="@+id/addr" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:textSize="17sp" 
     android:text="Title" 
     android:textStyle="italic"/> 

    <WebView 

     android:layout_width="match_parent" 
     android:layout_height="500dp" 
     android:layout_marginTop="10dp" 
     android:id="@+id/webView" 
     android:layout_gravity="center_horizontal" /> 
</LinearLayout> 

Trả lời

1

Set android: focusableInTouchMode = "true" trong cách bố trí tuyến tính của bạn:

<LinearLayout 
android:orientation="vertical" 
android:layout_width="match_parent" 
android:focusableInTouchMode="true" 
android:layout_height="match_parent"> 
0

Trên thực tế, chúng tôi sẽ phải đối mặt với vấn đề di chuyển nếu con bên trong ScrollView cũng hỗ trợ cuộn như ListView và trong trường hợp của bạn WebView.

Tôi đã tìm thấy một câu hỏi tương tự với một số cách giải quyết khác. Nó hỗ trợ di chuyển dọc nhưng cuộn ngang không được hỗ trợ nếu trang HTML vượt quá chiều rộng WebView.

Xem this để tham khảo.

17

Tôi cũng phải đối mặt với cùng một trường hợp một lần nhưng thêm thuộc tính descendantFocusability vào ScrollLord chứa LinearLayout, giải quyết vấn đề của tôi.

android:descendantFocusability="blocksDescendants" 

bạn có thể sử dụng như:

<LinearLayout 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:orientation="vertical" 
android:descendantFocusability="blocksDescendants" > 
+0

Đây là câu trả lời đúng, tks! – elirigobeli

0

Thật sự tôi tìm thấy một câu trả lời đơn giản cho điều này chỉ cần thêm "setfocusable (false)" trong file java liên quan ..... trong trường hợp này "webview" coz cuộn của nó có đầu tiên .... vì vậy thêm "webview.setfocusable (false)" trong lớp webview java liên quan.

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