ここにあります:
public class myScrollView extends ScrollView
{
public myScrollView(Context context)
{
super(context);
}
public myScrollView(Context context, AttributeSet attributeSet)
{
super(context,attributeSet);
}
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt)
{
View view = (View)getChildAt(getChildCount()-1);
int d = view.getBottom();
d -= (getHeight()+getScrollY());
if(d==0)
{
//you are at the end of the list in scrollview
//do what you wanna do here
}
else
super.onScrollChanged(l,t,oldl,oldt);
}
}
xml レイアウトで myScrollView を使用するか、コードでインスタンス化することができます。ヒント: 上記のコードで、ユーザーがリストの最後に 10 回頻繁にアクセスすると、コードは 10 回実行されます。リストを更新するためにリモート サーバーからデータをロードする場合など、場合によっては、そのような動作は望ましくありません (ほとんどの場合)。望ましくない状況を予測して回避しようとします。
ヒント 2: リストの最後に近づくと、スクリプトを実行するのに適したタイミングになる場合があります。たとえば、ユーザーが記事のリストを読んでいて、終わりに近づいているとします。次に、リストが終了する前にさらに読み込みを開始します。これを行うには、目的を達成するためにこれを行うだけです。
if(d<=SOME_THRESHOLD) {}