2016-03-29 80 views
-1

我想在我的滚动视图中有一个交替的文本和图像。代码没有错误,但是当我尝试运行该应用程序时。其力量关闭。我是android studio的新手。我怎样才能解决这个问题?我试图在这里搜索答案,但我似乎无法找到我正在寻找的解决方案。滚动视图内的交替Textview和Imageview

这里是我的代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:gravity="center" 
       android:orientation="vertical"> 

    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" 
       android:gravity ="center" 
       android:fillViewport="true" 
       android:layout_alignParentStart="true" 
       android:layout_marginTop="0dp" 
       android:id="@+id/scrollView"> 

     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_vertical" 
      android:textColor="#000" 
      android:textColorLink="@android:color/black" 
      android:textSize="18sp" 

      android:text="hello"/> 

     <ImageView 
      android:layout_width="15dp" 
      android:layout_height="15dp" 
      android:src="@drawable/cheese_1"/> 


     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_vertical" 
      android:textColor="#000" 
      android:textColorLink="@android:color/black" 
      android:textSize="18sp" 
      android:text="hi" /> 

     <ImageView 
      android:layout_width="15dp" 
      android:layout_height="15dp" 
      android:src="@drawable/cheese_2"/> 

    </ScrollView> 

</LinearLayout> 
+1

后你的java类和你的logcat太 –

回答

0

现在它的工作

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:gravity="center" 
        android:orientation="vertical"> 

     <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:orientation="vertical" 
        android:gravity ="center" 
        android:fillViewport="true" 
        android:layout_alignParentStart="true" 
        android:layout_marginTop="0dp" 
        android:id="@+id/scrollView"> 

      <LinearLayout 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:orientation="vertical"> 
      <TextView 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:gravity="center_vertical" 
       android:textColor="#000" 
       android:textColorLink="@android:color/black" 
       android:textSize="18sp" 
       android:text="hello"/> 

      <ImageView 
       android:layout_width="15dp" 
       android:layout_height="15dp" 
       android:src="@drawable/cheese_1"/> 


      <TextView 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:gravity="center_vertical" 
       android:textColor="#000" 
       android:textColorLink="@android:color/black" 
       android:textSize="18sp" 
       android:text="hi"/> 

      <ImageView 
       android:layout_width="15dp" 
       android:layout_height="15dp" 
       android:src="@drawable/cheese_2"/> 
    </LinearLayout> 
     </ScrollView> 

    </LinearLayout> 
+0

谢谢,这可以帮助我很多。现在我明白了 – Dreamer

0

滚动视图可以只包含一个孩子在里面。所以把你的imageViews和TextViews放在LinearLayout中,然后把LinearLayout放到ScrollView中。

+0

谢谢你的回应。 – Dreamer

0

你必须包括滚动视图太多的直接孩子。滚动视图在一次只能处理一个孩子,所以你只能在一个视图下包装所有其他视图。

让你的XML将看起来像现在这样

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:gravity="center" 
       android:orientation="vertical"> 

    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" 
       android:gravity ="center" 
       android:fillViewport="true" 
       android:layout_alignParentStart="true" 
       android:layout_marginTop="0dp" 
       android:id="@+id/scrollView"> 
    <LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="vertical"> 

     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_vertical" 
      android:textColor="#000" 
      android:textColorLink="@android:color/black" 
      android:textSize="18sp" 

      android:text="hello"/> 

     <ImageView 
      android:layout_width="15dp" 
      android:layout_height="15dp" 
      android:src="@drawable/cheese_1"/> 


     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_vertical" 
      android:textColor="#000" 
      android:textColorLink="@android:color/black" 
      android:textSize="18sp" 
      android:text="hi" /> 

     <ImageView 
      android:layout_width="15dp" 
      android:layout_height="15dp" 
      android:src="@drawable/cheese_2"/> 
    </LinearLayout> 
    </ScrollView> 

</LinearLayout> 

这应该现在的工作。

+0

谢谢你的回应。 – Dreamer

2

改为使用ListviewRecyclerview并自定义Adapter以显示图像和文字。这将会更好,更可控。

,如果你仍想只用滚动型,你只能有一个直接的孩子scrollview.Add线性布局,滚动型的孩子,所有的图像和textviews儿童到的LinearLayout如下

<ScrollView ..> 
    <LinearLayout ..> 
    <TextView ../> 
    <ImageView ../> 
    <TextView ../> 
</LinearLayout> 
</ScrollView> 
+0

谢谢你的回应。 – Dreamer