【问题标题】:Prism Xamarin Forms CustomRenderer causing navigation issue in iOSPrism Xamarin Forms CustomRenderer 在 iOS 中导致导航问题
【发布时间】:2017-01-21 12:22:41
【问题描述】:

我在具有自定义渲染器的 Xaml 中使用自定义标签。这似乎在 Android 中运行良好,但在 iOS 中却不行。

Repro:在 iOS 中运行应用程序。点击主页进入主页。点按登录。一个模式登录页面将显示一个开关。切换(或不切换)开关并点按完成。返回主页,它检查 INavigationAware.OnNavigatedTo() 中的结果并显示一个对话框。但是,在 iOS 中,当我使用具有自定义渲染器的 XfLabel 时,它不会被调用。不使用自定义渲染器将导致正确的行为。

XF 的 ExportRenderer 机制是否会在 iOS 上以某种方式与 Prism 的 DI 混淆?

Prism.Forms (6.2)

XF (2.3)

示例代码:https://github.com/hnabbasi/xamarin/tree/master/XFPrism/XFPrism

【问题讨论】:

    标签: c# ios xamarin.forms prism renderer


    【解决方案1】:

    对于遇到此问题的任何人。正如 Brian Lagunas 所指出的,这是我的自定义渲染器中的一个疏忽。我没有更新 OnElementChanged() 中的本机控件,而是更新了 XF 元素。

    应该更新原生控件,像这样

    Control.TextColor = UIColor.Purple; // iOS
    

    Control.SetTextColor(Android.Graphics.Color.Purple); // Android
    

    代替

    Element.TextColor = Color.Purple;
    

    这个故事的寓意:急于求成;)

    【讨论】:

      猜你喜欢
      • 2016-06-06
      • 2018-02-09
      • 1970-01-01
      • 2016-11-21
      • 2021-07-16
      • 2017-10-07
      • 2019-07-24
      • 2017-05-08
      • 1970-01-01
      相关资源
      最近更新 更多