آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

viewpager و کنترل auto scrollو manual scroll

miladmousavi  10 سال پیش  10 سال پیش
0 0

من در application  ای که دارم توسعه میدهم،یک viewpager داره،برایش یک تایمر نوشته ام که در هفت ثانیه خودش به صورت اتوماتیک اسکرول میکند.اما می خواهم وقتی کاربر تاچ می کند یا اسکرول، این تایمر متوقف شده و بعد از اسکرول کاربر دوباره این تایمر شروع به کار کند،کد من این هست.اگر تونستین بهم لینک یا راهنمایی بدهید.مرسی.

بخشی از کدهامو میذارم:

final ViewPager viewPager = (ViewPager) rootView.findViewById(R.id.viewpager);
RecentCasesAdapter adapter = new RecentCasesAdapter(getActivity(), recentCasesArrayList);
viewPager.setAdapter(adapter);
setTimer(viewPager, 7);
public void setTimer(final ViewPager myPager, int time) {
final int size = recentCasesArrayList.size();

final Runnable Update = new Runnable() {
int NUM_PAGES = size;

public void run() {
if (currentPage == NUM_PAGES) {
currentPage = 0;
}
myPager.setCurrentItem(currentPage++, true);
}
};

swipeTimer = new Timer();
swipeTimer.schedule(new TimerTask() {

@Override
public void run() {
handler.post(Update);
}
}, 1000, time * 1000);
}
+1 0
در OnToch و در action کلیک یعنی ACTION_DOWN میتونید اسکرول کردن رو متوقف کنید و برای قسمت دوم سوالتون هم میتونید از آموزشهای استاد کمک بگیرید ! (10 سال پیش)
0 0
ممنون.میشه کمی توضیح بدین یا یک مثال برام بزنین (10 سال پیش)
0 0
کدوم آموزش؟ (10 سال پیش)
+1 0
بخش 21 اسلایدر تصویر دوست عزیز ! (10 سال پیش)
0 0
من طبق اوون آموزش پیش رفتم و آموزش های موجود در اینترنت.مشکلی در viewpagerام وجود نداره.هم دستی اسکرول میشه.هم با زمانبندی ای که دادم.مسیله من اینه که می خوام وقتی کاربر رو viewpager دست میزنه و داره اسکرولش میکنه،تایمر متوقف بشه و عمل نکنه وقتی کاربر دستتشو کشید تایمر باز عمل کنه و طبق زمان پیش فرض بره جلو. (10 سال پیش)
 برای این سوال پاسخی وجود ندارد.

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .