2014-11-23 67 views
3

我想自定義滾動視圖以滿足我的特定要求,我想要做的事情檢測何時用戶停止滾動或以其他方式將他們的手指從屏幕上移開。我已經嘗試了幾種附加事件監聽器的方法,但還沒有找到實際上會觸發任何事件的方法。檢測滾動結束在Xamarin.Forms.Scrollview

我需要在android和iOS上完成這項工作,並且很樂意在跨平臺或平臺特定的代碼中執行此操作。

如果有人能提供任何指導,我會非常感激!

作爲一個小方面的說明,如果有人可以解釋爲什麼在我的自定義scrollview渲染器Touch += MyTouchHandler不允許我的觸摸處理程序被調用,這將是非常有用的。

回答

3

您可以通過實現此事件處理程序檢測到它: 假設您的列表被稱爲項目,那麼你需要將此代碼添加到您的page.xaml.cs文件:

var listview = new ListView(); 

    listview.ItemsSource = Items; 
    listview.ItemAppearing += (sender, e) => 
    { 
     if(isLoading || Items.Count == 0) 
      return; 

     //hit bottom! 
     if(e.Item.ToString() == Items[Items.Count - 1]) 
     { 
      LoadItems(); 
     } 
    } 

您可以檢查全部實施細節在這裏:https://gist.github.com/jamesmontemagno/465ced24fc8a206dcaf3#file-loadmoreonbottom-cs