میخوای وارد بازار کار بشی و محصولات خودت رو بفرشی همین الان ثبت نام کن
0

قابلیت Swipe To Refresh در اندروید

آموزش حاضر به شرح پیاده سازی الگو توسعه ی swipe to refresh در اپلیکیشن ( بروز رسانی صفحه در اندروید ) می پردازد.

اندروید همچنین یک کامپوننت UI یا widget ارائه می دهد که در واقع الگو توسعه ی  swipe to refresh را پیاده سازی کرده و به کاربر این امکان را می دهد تا با کشیدن صفحه به پایین ( swipe عمودی بر روی نمایشگر) آیتم های لیست را بروز رسانی کند (عملیات update را فراخوانی نماید.)

این قابلیت توسط widget ای به نام Swipe Refresh Layout پیاده سازی می شود. این کامپوننت UI در حقیقت عمل کشیدن صفحه به پایین یا swipe عمودی را تشخیص داده، یک progress bar مجزا به نمایش می گذارد و متدهای callback را در اپلیکیشن فراخوانی می کند.

جهت پشتیبانی از widget نام برده، ابتدا می بایست آن را به عنوان میزبان و پدر view مربوطه در فایل layoutمورد نظر تعریف نمایید و سپس رفتار یا عملیات بروز رسانی ( refresh) که با swipe عمودی کاربر بر روی نمایشگر فعال می شود را پیاده سازی کنید.

به منظور استفاده از swipe to refresh لازم است کتابخانه ی مربوطه ( dependency to the support library ) را در فایل Gradle build اپلیکیشن خود اضافه کرده باشید.

 

dependencies {
compile 'com.android.support:support-v4:24.0.0'
}
<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swiperefresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:id="@+id/my_recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbars="vertical" />
</android.support.v4.widget.SwipeRefreshLayout>

توجه: پس از پیاده سازی الگو توسعه ی swipe to refresh لازم است برای آن دسته از کاربرانی که قابلیت لمس نمایشگر به پایین را ندارند، یک دکمه ی refresh به overflow menu خود داخل toolbar اضافه نمایید

داخل بدنه ی متد SwipeRefreshLayout.OnRefreshListener منطق بروز رسانی view را پیاده، سازی نمایید.

 

mySwipeRefreshLayout.setOnRefreshListener(
new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
doYourUpdate();
}
}
);
private void doYourUpdate() {
// TODO implement a refresh
setRefreshing(false); // Disables the refresh icon
}

چنانچه action مزبور (آیتم refresh) را در منوی overflow مستقر در toolbar خود نیز اضافه کردید، در آن صورت لازم است آیکون refresh را نیز در UI به نمایش بگذارید.

 

public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_refresh:
// signal SwipeRefreshLayout to start the progress indicator
 
mySwipeRefreshLayout.setRefreshing(true);
doYourUpdate();
return true;
}
return super.onOptionsItemSelected(item);
}

امیدواریم  آموزش قابلیت Swipe To Refresh در اندروید ( بروز رسانی صفحه در اندروید ) نیز برای شما مفید واقع شده باشد و ادامه آموزش برنامه نویسی اندروید رو دنبال کنید . برای مطالعه پست‌ها بیشتر ، ما را در مدرسه کدنویسی تلگرام  و یا در تی جوان اینستاگرام دنبال کنید.

نظراتتون رو زیر همین پست با ما به اشتراک بگذارید.

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

×

سلام کاربر عزیز

هر سوالی دارید در این بخش هستیم تا شما رو راهنمائی کنیم

روی لوگومون کلیک کنید

× چطور میتونم کمکتون کنم؟