2017-01-05 111 views
1

我想爲Xamarin.Forms(v.2.3.3.175)中的MasterDetailPage編寫自定義渲染器。我需要調整與其內容相比太大的默認主寬度。Xamarin.Forms MasterDetailPage自定義渲染器

不幸的是,一旦自定義渲染器類被創建,我就會得到一個「System.NullReferenceException」。我清理了所有內容,但仍然出現錯誤。看來,簡單地從MasterDetailRenderer派生我的類是造成這個問題。

爲了測試的緣故,我已經剝奪我的自定義渲染到如下:

[assembly: Xamarin.Forms.ExportRenderer(typeof(Xamarin.Forms.ExMasterDetailPage), typeof(ExMasterDetailRenderer))] 
namespace MDPageTest.Droid.Renderers { 
    public class ExMasterDetailRenderer : MasterDetailRenderer 
    { } 
} 

沒有別的!仍然發生錯誤。 註釋屬性行(因此禁用自定義渲染器)或刪除類派生可解決問題,並且應用程序無任何其他錯誤地啓動。

是否有其他人遇到這樣的問題?有關如何解決它的任何線索?

預先感謝您。 乾杯,

M.

回答

2

這個原因可能是您從FormsAppCompatActivity而不是FormsApplicationActivityMainActivity繼承。您應該能夠通過使您的自定義渲染器從Xamarin.Forms.Platform.Android.AppCompat名稱空間繼承MasterDetailPageRenderer來解決此問題。

相關問題