0

私のアプリケーションでは、画面上のレイアウト全体をスクロールする機能を提供したいと考えています。ここでは、ScrollView 内に Linearlayout もラップしていますが、スクロール機能は提供していません。以下は私のレイアウトコードです:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/ScrollView01"
    >

<LinearLayout  
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:orientation="vertical"
  android:paddingTop="50dp"
  android:weightSum="1"
  android:layout_marginTop="67dp"
  >

    <ImageView 
        android:id="@+id/artistImageView"
        android:layout_width="fill_parent"
        android:layout_height="150dp"
        android:paddingTop="10dp"
        android:layout_marginTop="67dp"
        android:background="#000000"
    />

    <TextView
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:text="BIOGRAPHY"
        android:textColor="#eeeeee"
        android:background="#000000"
        android:id="@+id/txt1"
    />          
    <ImageView
        android:src="@drawable/separator_bio"
        android:scaleType="fitXY"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"            
        android:background="#000000"
        android:id="@+id/sep1"
    />                  
    <TextView  
        android:id="@+id/artistView" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"         
        android:textStyle="bold"
        android:textColor="#ffffff"              
        android:paddingLeft="10dp"
        android:paddingRight="5dp"        
        android:background="#000000"
    />
</LinearLayout>
</ScrollView>

解決策を提案してください。ありがとうございます。

4

3 に答える 3

0

上記のコードは私にとっては機能しています。つまり、スクロールは私の側から上記のコードで機能しています。

あなたの側がこのコードが機能しない場合は、これを試してください。

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical"

  >
<ScrollView

    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/ScrollView01"
    >

<LinearLayout  
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical"
  android:paddingTop="50dp"
  android:weightSum="1"
  android:layout_marginTop="67dp"
  >

    <ImageView 
        android:id="@+id/artistImageView"
        android:layout_width="fill_parent"
        android:layout_height="150dp"
        android:paddingTop="10dp"
        android:layout_marginTop="67dp"
        android:background="#000000"
    />

    <TextView
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:text="BIOGRAPHY"
        android:textColor="#eeeeee"
        android:background="#000000"
        android:id="@+id/txt1"
    />          
    <ImageView
        android:src="@drawable/separator_bio"
        android:scaleType="fitXY"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"            
        android:background="#000000"
        android:id="@+id/sep1"
    />                  
    <TextView  
        android:id="@+id/artistView" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"         
        android:textStyle="bold"
        android:textColor="#ffffff"              
        android:paddingLeft="10dp"
        android:paddingRight="5dp"        
        android:background="#000000"
    />
</LinearLayout>
</ScrollView>
</LinearLayout>
于 2012-11-27T07:07:11.753 に答える
0

線形レイアウトのコンテンツの高さをwrap_contentに変更することをお勧めします

<LinearLayout  
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:orientation="vertical"
   android:paddingTop="50dp"
   android:weightSum="1"
   android:layout_marginTop="67dp"
   >

コンテンツをラップする理由は、この方法でスクロールビューが画面全体に表示され、線形レイアウトが自由にオーバーフローするためです。このオーバーフローは、スクロールするものです

編集:

android:weightSum="1"コードを詳しく調べた後は、子供の身長を定義するために体重を使用することはないため、実際には線は必要ありません。また、wrap_contentを使用する場合、親ビューに余地が残ることはないため、ウェイトは期待どおりに機能しません:)

于 2012-11-26T19:16:55.743 に答える
0

これは、私のアプリケーションで機能する最終的なコードです。

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:id="@+id/ScrollView01"
    android:layout_marginTop="65dp"
    android:layout_marginBottom="163dp"
    android:background="#000000"
    android:scrollbarStyle="insideInset"
    >   
<LinearLayout  
  android:layout_width="wrap_content"
  android:layout_height="250dp"
  android:orientation="vertical"  
  >
  <TextView android:id="@+id/artistName"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textStyle="bold"
        android:textColor="#ffffff"
        android:textSize="16px"
  />
  <ImageView 
        android:id="@+id/artistImageView"   
        android:layout_width="fill_parent" 
        android:layout_height="150dp"        
        android:layout_marginTop="2dp"
        android:paddingTop="10dp"
        android:paddingLeft="100dp"
        android:background="#000000"

        android:layout_marginRight="50dp"

  />

    <TextView
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"
        android:text="BIOGRAPHY"
        android:textStyle="bold"
        android:textColor="#ffffff"

        android:background="#000000"
        android:id="@+id/txt1"
    />          
    <ImageView
        android:src="@drawable/separator_bio"
        android:scaleType="fitXY"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"            
        android:background="#000000"
        android:id="@+id/sep1"
        android:paddingBottom="2dp"
    />        

    <TextView  
        android:id="@+id/artistView" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content"         
        android:textStyle="bold"
        android:textColor="#eeeeee"              
        android:paddingLeft="20dp"                       
        android:background="#000000"                        
        android:lines="25"
      android:layout_marginRight="-20dp"  

    />
</LinearLayout>
</ScrollView>
</LinearLayout>
于 2012-11-29T09:05:34.220 に答える