2016-11-30 1 views
0

Xamarin에서 사용자 지정 페이지 렌더러를 만들려고하고 있는데 참조에 문제가 있습니다. 즉, ExportRenderer와 PageRenderer에서 "찾을 수 없습니다"라는 메시지가 나타납니다.ExportRenderer을 (를) 찾을 수 없습니다.

using CoreAnimation; 
 
using CoreGraphics; 
 
using Xamarin.Forms; 
 
using Utilities.GradientRenderer; 
 
using Utilities.GradientRenderer.iOS; 
 

 
[assembly:ExportRenderer (typeof(GradientContentPage), typeof(GradientContentPageRenderer))] 
 
namespace Utilities.GradientRenderer.iOS 
 
{ 
 
    public class GradientContentPageRenderer : PageRenderer 
 
    { 
 
     protected override void OnElementChanged(ElementChangedEventArgs e) 
 
     { 
 
      base.OnElementChanged(e); 
 

 
      if (e.OldElement == null) // perform initial setup 
 
      { 
 
       var page = e.NewElement as GradientContentPage; 
 
       var gradientLayer = new CAGradientLayer(); 
 
       gradientLayer.Frame = View.Bounds; 
 
       gradientLayer.Colors = new CGColor[] { page.StartColor.ToCGColor(), page.EndColor.ToCGColor() }; 
 
       View.Layer.InsertSublayer(gradientLayer, 0); 
 
      } 
 
     } 
 
    } 
 
}

은 내가 실종 무엇 비주얼 스튜디오 2015 Xamarin.Forms 버전 2.3.3.168

을 사용하고 있습니다 : 여기 내 코드는?

감사합니다.

답변

1

은 추가 using 당신이 렌더러를 작성하는 Xamarin.Forms 플랫폼, 즉

안드로이드를 기반으로 :

using Xamarin.Forms.Platform.Android; 

아이폰 OS :

using Xamarin.Forms.Platform.iOS; 
+0

감사합니다. 나는 그것을 시도하고 "iOS가 XamarinForms.Platform 네임 스페이스에 존재하지 않는다"라는 메시지가 나타납니다. 어셈블리 참조가 누락 된 것 같습니다. 그러나 어느 것이 있는지 파악할 수 없습니다. – dpdragnev

+0

@dpdragnev 이것이'Xamarin.iOS' 프로젝트라고 가정하면,'Xamarin.Forms.' 패키지를 추가하면 자동으로 'Xamarin.Forms.Core','Xamarin. Forms.Platform '과'Xamarin.Forms.Platform.iOS'는'.csproj' 안에 있습니다. – SushiHangover

+0

이것은 실제로는 PCL 프로젝트입니다. 솔루션에 iOS 프로젝트가 있지만 휴대용 라이브러리 프로젝트에서 작업하고 있습니다. – dpdragnev

관련 문제