我想在我的activity
中運行類似照片顯示的內容。我將碎片加載到ViewPager
,然後模擬切換視圖。ViewPager開關在線程中模擬Android
Runnable runnable = new Runnable(){
@Override
public void run() {
pager.setCurrentItem(0);
while(true){
try {
Thread.sleep(Settings.showDelay*1000);
if(pager.getCurrentItem()==photos.size()-1){
pager.setCurrentItem(0);
Thread.sleep(Settings.showDelay*1000);
}else
pager.setCurrentItem(pager.getCurrentItem()+1, true);
} catch (InterruptedException e) {
}
}
}
};
Thread thread = new Thread(runnable);
thread.start();
我把它放在我的onCreate
方法和3張圖片它完美,但對4個或更多的:
java.lang.IllegalStateException: Must be called from main thread of process
不要使用線程來製作滑動動畫因爲它將在UI線程上運行並在UI中進行更改。這就是爲什麼它給出這樣的錯誤。 – GrIsHu
但我想要這些更改。我需要更改此傳呼機中的currentItem而無需在屏幕上觸摸 – szpiku
嘗試使用我已發佈爲答案的代碼。 – GrIsHu