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

اسکرول کردن scrollview

MyNewName  11 سال پیش  9 سال پیش
0 0

سلام

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

چطور میشه متوجه شد ؟

ممنون

 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
کاشی زاده  11 سال پیش
+3 0

کلاس زیر رو میسازید :

 public class ScrollViewExt extends ScrollView {
private ScrollViewListener scrollViewListener = null;
public ScrollViewExt(Context context) {
super(context);
}

public ScrollViewExt(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

public ScrollViewExt(Context context, AttributeSet attrs) {
super(context, attrs);
}

public void setScrollViewListener(ScrollViewListener scrollViewListener) {
this.scrollViewListener = scrollViewListener;
}

@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
if (scrollViewListener != null) {
scrollViewListener.onScrollChanged(this, l, t, oldl, oldt);
}
}
}

یک اینترفیس هم به عنوان لیسنر میسازید :

public interface ScrollViewListener {
    void onScrollChanged(ScrollViewExt scrollView,
                         int x, int y, int oldx, int oldy);
}

زمانی که لیسنر صدا شد این محاسبات رو انجام میدید :

 public void onScrollChanged(ScrollViewExt scrollView, int x, int y, int oldx, int oldy) {

View view = (View) scrollView.getChildAt(scrollView.getChildCount() - 1);
int diff = (view.getBottom() - (scrollView.getHeight() + scrollView.getScrollY()));


if (diff == 0) {
پایان اسکرول ویو شما
}
}
0 0
من این مشکلو دارم ولی متوجه این کدها نمیشم ممنون میشم اگه کسی میدونه توضیح بده (9 سال پیش)
+1 0
قسمت اینترفیس آموزش ها رو ببینید همه چیز این کد دستتون میاد دقت به پارامترها هم یادتون نره ! (9 سال پیش)
0 0
مقادیر int x, int y, int oldx, int oldy رو باید چی بدم ؟ (9 سال پیش)
0 0
مشکل حل شد ممنون (9 سال پیش)

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