2017-05-07 4 views
-7

Ich entwickle eine Android-Video-App, wo ich Screenshot Bilder von jedem Video mindestens 10 Stück für jedes Video auflisten.Und ich benutze Linear Layout, die in einem NestedScrollview ist, um diese Bilder anzuzeigen, funktioniert aber nur, wenn ich 3 Bildansicht aber wenn ich mehr als 3 Imageview setzen dann funktioniert es nicht und die App nicht respond.Here ist mein xml Layout der screenshot.xml Datei ..Wie zeigen Sie mehrere Bilder im linearen Layout an?

<LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1b" /> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1c" /> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1j" /> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1f" /> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1g" /> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1h" /> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="180dp" 
       android:scaleType="centerCrop" 
       android:src="@drawable/alaep1m" /> 
     </LinearLayout> 

Was ist falsch mit meinem Code?

Antwort

0

Sie sollten unbedingt über RecyclerView hier denken. Ihre App reagiert nicht auf Speicherprobleme.

Überprüfen Sie das Beispiel: Recycler View

+0

Vielen Dank für Ihre Antwort, aber wenn Sie mir ein Beispiel für recyleview mit meinem Code geben könnten? –

+0

Ich denke, es ist wirklich gut dokumentiert in diesem Beispiel, dass ich für Sie bereitstellen. Sie müssen nur die TextView zu ImageView von dem Adapter ändern, und Sie sind gut zu gehen :) – Konrad

0

Es gibt viele Möglichkeiten, um die Bilder zu zeigen. Aber für deine Einfachheit.

Hier ist der Code. aber ich würde sehr empfehlen für GridView oder ListView oder RecyclerView gehen.

Dies ist keiner von ihnen. Aber trotzdem können Sie es in Ihrer Aktivität zeigen.

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.NestedScrollView 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:orientation="vertical" 
    tools:context="com.example.xxx.yyy.MainActivity"> 

     <TableLayout 
      android:layout_width="match_parent" 
      android:layout_margin="10dp" 
      android:id="@+id/tableLayout" 
      android:layout_height="380dp" 
      android:layout_weight="1" 
      android:weightSum="2"> 

      <TableRow 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1"> 

       <ImageView 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:id="@+id/imageOne" 
        android:scaleType="matrix" 
        android:layout_margin="5dp" 
        android:background="@drawable/view_background"/> 

       <ImageView 
        android:layout_weight="1" 
        android:layout_margin="5dp" 
        android:id="@+id/imageTwo" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background" 
        android:layout_width="0dp" 
        android:layout_height="match_parent"/> 

      </TableRow> 

      <TableRow 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1"> 

       <ImageView 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:id="@+id/imageThree" 
        android:layout_margin="5dp" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background"/> 

       <ImageView 
        android:layout_weight="1" 
        android:layout_margin="5dp" 
        android:id="@+id/imageFour" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background" 
        android:layout_width="0dp" 
        android:layout_height="match_parent"/> 

      </TableRow> 
      <TableRow 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1"> 

       <ImageView 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:id="@+id/imageFive" 
        android:layout_margin="5dp" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background"/> 

       <ImageView 
        android:layout_weight="1" 
        android:layout_margin="5dp" 
        android:id="@+id/imageSix" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background" 
        android:layout_width="0dp" 
        android:layout_height="match_parent"/> 

      </TableRow> 
      <TableRow 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1"> 

       <ImageView 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:id="@+id/imageSeven" 
        android:layout_margin="5dp" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background"/> 

       <ImageView 
        android:layout_weight="1" 
        android:layout_margin="5dp" 
        android:id="@+id/imageEight" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background" 
        android:layout_width="0dp" 
        android:layout_height="match_parent"/> 

      </TableRow> 
      <TableRow 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_weight="1"> 

       <ImageView 
        android:layout_width="0dp" 
        android:layout_height="match_parent" 
        android:layout_weight="1" 
        android:id="@+id/imageNine" 
        android:layout_margin="5dp" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background"/> 

       <ImageView 
        android:layout_weight="1" 
        android:layout_margin="5dp" 
        android:id="@+id/imageTen" 
        android:scaleType="matrix" 
        android:background="@drawable/view_background" 
        android:layout_width="0dp" 
        android:layout_height="match_parent"/> 

      </TableRow> 

      </TableLayout> 

</android.support.v4.widget.NestedScrollView> 

Und ja, wie ich schon sagte, gibt es noch viele Möglichkeiten, um Ihre Lösung zu nähern.

Verwandte Themen