【问题标题】:Using a custom renderer in PCL library在 PCL 库中使用自定义渲染器
【发布时间】:2018-07-26 02:58:06
【问题描述】:

我想在 PCL 中使用我的自定义渲染器。可能吗?或者我可以在这个 PCL 中初始化我的自定义渲染器吗?

【问题讨论】:

    标签: xamarin xamarin.forms portable-class-library custom-renderer


    【解决方案1】:

    没有和没有。

    您在 PCL 中使用的是 - 比方说 - 组件,它是抽象的。组件的“物化”(或不物化)将由每个平台上的自定义渲染完成。

    一旦它可以在每个平台上以不同方式显示(或行为),我看不出有理由在独立于平台的实现上使用它。

    自定义呈现器允许开发人员覆盖此过程,以自定义 Xamarin.Forms 控件在每个平台上的外观和行为。

    https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/custom-renderer/

    也许通过一个真实的案例,我们可以提出另一种解决方案。

    【讨论】:

    • 感谢您的回答!我只是想为几个应用程序做一个普通的工作人员(例如,设置活动)。我为一个应用程序使用自定义渲染器做到了这一点,而在另一个应用程序中我需要使用相同的设置。而且我不想复制源代码。也许您可以针对此类问题提出任何解决方案?..
    • @ДенисЧорный 这听起来像是一个包或个人插件/工具包。你也可以这样做。 Here's a good video about this topic from James Montemagno's youtube channel.
    • 添加了解决方案
    【解决方案2】:

    最后,我找到了解决方案。 我刚刚在我的 PCL 中创建了一个类并在 XAML 中使用它,假设:

    public class MyHelperEntry : Entry { public MyHelperEntry() { } }
    

    继承Entry 类。在我使用此 PCL 的应用程序中,我创建了一个继承 MyHelperEntry 的类:

    public CustomHelperEntry : MyHelperEntry { public CustomHelperEntry() { } }
    

    并将此CustomHelperEntry 用作自定义渲染器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-07
      • 1970-01-01
      • 2017-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多