列表视图和项目选择/点击的自定义渲染器

伊万

我正在 xamarin 表单项目中为 android 的自定义渲染器开发左右滑动。我有一个实现方法“ DispatchTouchEvent(MotionEvent touch)”的重写的类。当引发 MotionEventActions.Up 时,我会做一些事情。我已经在我的 ListView 的共享代码中实现了一个“ItemSelected”事件,但是当我在列表视图的一个元素上滑动时,它会解释这是一个点击,这会触发这个事件。

在元素中点击或滑动时如何区分?

当我在“MotionEventActions.Up”中滑动时,我一直在思考差异化,但我不知道如何从自定义渲染器显示新页面。

这是渲染器的代码:

class SwipeListRenderer : ListViewRenderer
{
    bool swipe = false;
    bool scroll;
    double puntoYinicial = 0.0;

    public override bool DispatchTouchEvent(MotionEvent touch)
    {
        try
        {
            if (puntoYinicial == 0.0)
                puntoYinicial = touch.GetY();

            double currentQuota = ((touch.GetX() - TouchDispatcher.StartingBiasX) / (double)this.Width);
            float x = touch.GetX();
            float y = touch.GetY();
            SwipeList.SwipeItemView touchedElement = (TouchDispatcher.TouchingView as SwipeList.SwipeItemView);
            switch (touch.ActionMasked)
            {

                case MotionEventActions.Down:
                    (this.Element as SwipeList.SwipeListView).RestoreItemPosition();

                    swipe = false;
                    scroll = false;

                    return base.DispatchTouchEvent(touch);
                    break;

                case MotionEventActions.Up:
                    if (swipe)
                        touchedElement.CompleteTranslation(currentQuota);      

                    (this.Element as SwipeList.SwipeListView).AppendTouchedElement(touchedElement);

                    TouchDispatcher.TouchingView = null;
                    TouchDispatcher.StartingBiasX = 0;
                    TouchDispatcher.StartingBiasY = 0;
                    puntoYinicial = 0.0;
                    break;
                case MotionEventActions.Move:
                    if (touchedElement != null)
                        TouchDispatcher.TouchingView.PerformTranslation(currentQuota);

                    break;
            }
            return base.DispatchTouchEvent(touch);
        }
        catch (Exception ex)
        {

            throw;
        }
    }
}
努尔哈克迦耶

我遇到了类似的问题,这就是我解决它的方法。请参阅我对这个 stackoverflow问题的回答。在这个答案中,在代码背后的代码中,您可以看到我如何使用 TapGestureRecognizer。希望能帮助到你。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

列表视图和使用自定义渲染器查看单元格的单元重用问题

来自分类Dev

自定义Actionbar紧凑项目选择器

来自分类Dev

自定义选择器渲染器不会在第一次点击时渲染

来自分类Dev

网格的自定义渲染器

来自分类Dev

网格的自定义渲染器

来自分类Dev

如何在自定义渲染器中渲染xamarin.forms视图

来自分类Dev

主项目未调用参考项目自定义渲染器

来自分类Dev

使用自定义渲染器强制重绘Xamarin.Forms视图

来自分类Dev

Xamarin.Forms.Maps 自定义折线渲染器在视图中不呈现

来自分类Dev

如何在Xamarin共享项目中使用自定义渲染器

来自分类Dev

Highcharts自定义渲染器图表和工具提示

来自分类Dev

Mac和UWP中的LibVLCSharp VideoView的自定义渲染器(Xamarin.Forms)

来自分类Dev

自定义单元格渲染器

来自分类Dev

Angular2的自定义渲染器

来自分类Dev

意外的Jtable自定义渲染器行为

来自分类Dev

自定义数据类型渲染器部署

来自分类Dev

Uno Platform自定义渲染器

来自分类Dev

Xamarin表单,DataTemplate与自定义渲染器

来自分类Dev

PrimeFaces组件的自定义渲染器未注册

来自分类Dev

Highcharts:自定义渲染器的选项设置

来自分类Dev

如何自定义谷歌标记群集渲染器?

来自分类Dev

意外的Jtable自定义渲染器行为

来自分类Dev

Xamarin形成WinRT条目自定义渲染器

来自分类Dev

按钮的渐变背景 - 自定义渲染器

来自分类Dev

Xamarin 自定义渲染器更新值

来自分类Dev

列表视图设置自定义波纹选择器

来自分类Dev

在Forms UWP中,在自定义标题视图中使用内容视图进行向后导航不能在自定义渲染器上正常工作

来自分类Dev

ListView自定义过滤器过滤时给出错误的项目选择[Android]

来自分类Dev

ListView自定义过滤器过滤时给出错误的项目选择

Related 相关文章

  1. 1

    列表视图和使用自定义渲染器查看单元格的单元重用问题

  2. 2

    自定义Actionbar紧凑项目选择器

  3. 3

    自定义选择器渲染器不会在第一次点击时渲染

  4. 4

    网格的自定义渲染器

  5. 5

    网格的自定义渲染器

  6. 6

    如何在自定义渲染器中渲染xamarin.forms视图

  7. 7

    主项目未调用参考项目自定义渲染器

  8. 8

    使用自定义渲染器强制重绘Xamarin.Forms视图

  9. 9

    Xamarin.Forms.Maps 自定义折线渲染器在视图中不呈现

  10. 10

    如何在Xamarin共享项目中使用自定义渲染器

  11. 11

    Highcharts自定义渲染器图表和工具提示

  12. 12

    Mac和UWP中的LibVLCSharp VideoView的自定义渲染器(Xamarin.Forms)

  13. 13

    自定义单元格渲染器

  14. 14

    Angular2的自定义渲染器

  15. 15

    意外的Jtable自定义渲染器行为

  16. 16

    自定义数据类型渲染器部署

  17. 17

    Uno Platform自定义渲染器

  18. 18

    Xamarin表单,DataTemplate与自定义渲染器

  19. 19

    PrimeFaces组件的自定义渲染器未注册

  20. 20

    Highcharts:自定义渲染器的选项设置

  21. 21

    如何自定义谷歌标记群集渲染器?

  22. 22

    意外的Jtable自定义渲染器行为

  23. 23

    Xamarin形成WinRT条目自定义渲染器

  24. 24

    按钮的渐变背景 - 自定义渲染器

  25. 25

    Xamarin 自定义渲染器更新值

  26. 26

    列表视图设置自定义波纹选择器

  27. 27

    在Forms UWP中,在自定义标题视图中使用内容视图进行向后导航不能在自定义渲染器上正常工作

  28. 28

    ListView自定义过滤器过滤时给出错误的项目选择[Android]

  29. 29

    ListView自定义过滤器过滤时给出错误的项目选择

热门标签

归档