2012-04-01 6 views
0

Ich habe eine HorzontalScrollView mit einem LinearLayout im Inneren. Während der Laufzeit kann ich dem LinearLayout weitere LinearLayouts hinzufügen.Android HorizontalScrolling Laggy

Jetzt habe ich das Problem, dass der Scrollview nur ein wenig scrollt und nicht mit einem Finger gleiten!

Hat jemand eine Lösung für dieses Problem?

Antwort

1

HorizontalScrollView verwendet keinen Adapter, der den Speicher der Liste verwaltet, daher kann er keine schweren Listen (Bilder, benutzerdefinierte Ansichten usw.) verarbeiten.

Sie können diese horizontale ListView http://www.dev-smart.com/archives/34 verwenden, aber stellen Sie sicher, dass Sie nicht die Listeneintrag click-Methode in der getView schreiben, wird es die Liste langsam blättern. Abgesehen davon ist das eine großartige Ressource für eine reibungslose horizontale Listenansicht.

Sie können auch die Android Ansicht Pager, erkunden, die auch auf niedrigere Android-Versionen mit dem Compatibility Pack unterstützt wird: http://developer.android.com/sdk/compatibility-library.html

bearbeiten - so etwas in den Adapter, der die XML Sie wollen (die Linearlayout) aufbläst und dann füllt jede Ansicht mit den relevanten Daten.

@Override 
      public View getView(final int position, View convertView, ViewGroup parent) { 

       if (convertView == null) { 
        convertView = LayoutInflater.from(parent.getContext()).inflate(R.layout.chat_friends_list_item, null); 
       } 

       ImageView status = (ImageView)convertView.findViewById(R.id.status); 
       ImageView image = (ImageView)convertView.findViewById(R.id.image); 
       ImageView imageBorder = (ImageView)convertView.findViewById(R.id.image_border); 
       TextView title = (TextView)convertView.findViewById(R.id.title); 
} 
+0

Wissen Sie, wie ich erreichen kann, dass, wenn sich kein Element in der Listview befindet, ein anderes lineares Layoutelement mit der ganzen Breite zur Listenansicht hinzugefügt wird? –

+0

@ matchi1992 in der getview des Listenansichtsadapters, befüllen Sie das lineare Layoutelement XML. Siehe aktualisierte Antwort. –

0

Das Problem war meine Eltern Viewflow, weil es das Swipe-Ereignis gestohlen hat! Die HorizontalListView ist zu fehlerhaft für mich! (Probleme mit Größenattributen)

Vielen Dank für Ihre Antwort! ;)

Verwandte Themen