2016-05-25 15 views
0

ich einige kinde von Kalender haben und ich Scroll zu Tage blättern ich es auf erstellen möchten wird es hier blättern können heute aktuell sein ist der Kabeljau ich benutze:Android Scroll Scroll automatisch in onCreate Methode

scrollV.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { 
    @Override 
    public void onGlobalLayout() { 
     scr.post(new Runnable() { 
      public void run() { 
       scrollV.scrollTo(0,3);       } 
     }); 
    } 
}); 

3 ist nur für den Test Ich werde es später ändern; Danke im Voraus.

+1

Können Sie näher erläutern, was Ihr Problem ist? – Abx

+0

Ich möchte, dass es zum geänderten Index scrollt, wenn es die Aktivität startet, es scrollt es gerade nicht und zeigt ersten Index – Radwa

Antwort

0

ich es gelöst hier ist die Antwort für jedes man es braucht: einfach einen Timer in OnCreate Methode setzen oder in onCreateView, wenn es ein Fragment ist

new java.util.Timer().schedule(
       new java.util.TimerTask() { 
        @Override 
        public void run() { 
         list.smoothScrollToPosition(day); 
        } 
       }, 
       4000 
     ); 

Tag die Variable, die Sie in die Liste wollen zu scrollen zum Tag des Monats für mich, Liste ist die Listenansicht

1
final ScrollView scrollview = ((ScrollView) findViewById(R.id.scrollview)); 
scrollview.post(new Runnable() { 
    @Override 
    public void run() { 
     scrollview.fullScroll(ScrollView.FOCUS_DOWN); 
    } 
}); 

Oder Ether verwenden dies.

final long totalScrollTime = Long.MAX_VALUE; 
final int scrollPeriod = 20; 
final int heightToScroll = -8; 

timerDown = new CountDownTimer(totalScrollTime, scrollPeriod) { 
@SuppressLint("NewApi") 
public void onTick(long millisUntilFinished) { 
    scrollview.scrollListBy(heightToScroll); 
} 

public void onFinish() { 
    timerDown.cancel(); 
} 

};

+0

nicht arbeiten es zeigt ersten Index auch an – Radwa