2016-04-19 13 views
1

Ich benutze etwa 27 Expandable Listview (Das Scrollen innerhalb Scrollview, nicht die, die Eltern, Kind Beziehung) innerhalb Scrollview (Eins ist sichtbar, nach der Auswahl eines Textes). Ich möchte mehr hinzufügen, während der Benutzer beim Scrollen von Listview den letzten Eintrag erreicht. Aber setOnScrollListener() gibt mir den letzten Punkt sofort zurück, während ich Daten lade, statt zu scrollen. Bitte schlagen Sie einen Weg vor, wie Sie in diesem Zustand mehr laden können.setOnScrollListener() von Expandable Listview unter scrollview

listViewsSearchResults[i].setOnScrollListener(new AbsListView.OnScrollListener() { 

        @Override 
        public void onScrollStateChanged(AbsListView view, int scrollState) { 

        } 

        @Override 
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { 

         if (firstVisibleItem + visibleItemCount == totalItemCount && totalItemCount != 0) { 

          //call API 
          Log.d("ListView ", alphabets[finalI] + " Hit API"); 

          } 
         } 

        } 
       }); 
+0

was genau willst du ?? –

+0

Ich möchte in dieser Listenansicht mehr laden, wenn ich zum letzten Element der Listenansicht blättern. –

+0

hast du irgendwas probiert? –

Antwort

0

Wenn Sie setOnScrollListener() verwenden, der erweiterbar Listview unter Scrollview, Sie es nicht innerhalb Scrollview verwenden können, aber Sie können eine andere Lösung haben, wie ich verwendet habe und fixiert mein Problem.

Sie können einfach Ihre Scrollview und Header-Layout über der Listenansicht entfernen und Listenansicht nur in der Layout-Datei. und verwenden Sie dann Ihre HeaderView als ListView HeaderView.

ein anderes Layout als layout_headerview.xml erstellen und Header Inhalt dieser Datei setzen,

sie schließlich als headerView von Listview,

schreibt Code unten in Ihrem onCreate() -Methode festgelegt.

LayoutInflater layoutInflater; 
View headerView; 
layoutInflater = LayoutInflater.from(this); 
headerView = layoutInflater.inflate(R.layout.layout_headerview, null); 

//add it in your listview 
listView.addHeaderView(headerView); 

// to access headerView widgets you may use below, 
iv_overlay = (ImageView) headerView.findViewById(R.id.iv_overlay);