2014-01-27 2 views
8

Я разрабатываю приложение Android 4 и выше. Один слой генерирует это предупреждение: этот макет ScrollView или его родитель RelativeLayout, возможно, бесполезен; перенос атрибута фона на другой видScrollView layout или его родственник RelativeLayout, возможно, бесполезен

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#000" 
    android:orientation="vertical" > 

    <ScrollView 
     android:id="@+id/scrollView1" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="3dp" > 

     <WebView 
      android:id="@+id/about" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="20dp"   
      android:layerType="software" /> 
    </ScrollView> 

</RelativeLayout> 

Как я могу решить это предупреждение?

+0

, если какие-либо из ответов ниже ответить на ваш вопрос, пожалуйста, отметьте их в качестве ответа. – AaA

ответ

19

Эта ошибка означает, что RelativeLayout бесполезен, так как содержит только один вид (ScrollView). Вы должны сделать ScrollView родителем, не забудьте переместить тег xmlns: android в ScrollView, а также в фоновый атрибут # 000. Это улучшит производительность и устранит ошибку. Также помните, что ScrollView должен иметь только один подзаголовок.

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/scrollView1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#000" 
    android:layout_marginBottom="3dp" > 

    <WebView 
     android:id="@+id/about" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="20dp"   
     android:layerType="software" /> 
</ScrollView> 
6

Обычно вам требуется ScrollView снаружи, что позволяет прокручивать содержимое, которое у вас есть.

Я думаю, что это то, что вы хотите:

<ScrollView 
    android:id="@+id/scrollView1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginBottom="3dp" > 

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="#000" 
     android:orientation="vertical" > 

    <WebView 
     android:id="@+id/about" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="20dp"   
     android:layerType="software" /> 

    </RelativeLayout> 
</ScrollView> 
0

Если вы действительно хотите использовать относительный или линейный макет, который вы можете использовать перед Scrollview предоставленного после линейного макета вы должны будете использовать какой-либо контроль (ImageView, IMAGEBUTTON и т. д.), то он не будет бросать никаких предупреждений/ошибок.

Счастливого кодирование

+1

Это должно быть комментарий – ketan

Смежные вопросы