2017-05-24 34 views
2

我无法从AlexRainman制作CarouselView控件。该控件在Android上呈现良好,但不在iOS上。我的项目是iOS和Android的Xamarin PCL项目,目前正在为Visual Studio 2017 for macOS工作。并坚持这一点,并不知道如何解决这个错误。任何帮助,将不胜感激。从AlexRainman的CarouselView不在iOS上渲染,在Android上很好。 Xamarin.Forms

我的内容页:

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
     xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
     x:Class="PelotaJara.BookingUserPage" 
     xmlns:controls="clr-namespace:CarouselView.FormsPlugin.Abstractions;assembly=CarouselView.FormsPlugin.Abstractions" 

     > 
    <controls:CarouselViewControl x:Name="carousel" IndicatorsTintColor="Gray" ShowIndicators="True" 
           CurrentPageIndicatorTintColor="Black" Orientation="Horizontal" InterPageSpacing="10" 
           VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand" AnimateTransition="true" IsSwipingEnabled="true"> 
     <controls:CarouselViewControl.ItemTemplate> 
      <DataTemplate> 
      <Grid> 
       <Grid.RowDefinitions> 
        <RowDefinition Height="30*" /> 
        <RowDefinition Height="50*" /> 
        <RowDefinition Height="20*" /> 

       </Grid.RowDefinitions> 


        <Image Grid.Row="0" VerticalOptions="Start" HorizontalOptions="CenterAndExpand" Source="{Binding Image}"/> 
        <Label Grid.Row="0" Text="Cancha Iluminada" TextColor="White" HorizontalOptions="Center" VerticalOptions="End"/> 
        <Button Grid.Row="2" Text="Reservar" BackgroundColor="Red" HorizontalOptions="Fill" VerticalOptions="Center" TextColor="White"/> 


      </Grid> 
     </DataTemplate> 
     </controls:CarouselViewControl.ItemTemplate> 
    </controls:CarouselViewControl> 

隐藏代码:

[XamlCompilation(XamlCompilationOptions.Compile)] 
public partial class BookingUserPage : ContentPage 
{ 
    ObservableCollection<CarouselModel> model { get; set; } 
    public BookingUserPage() 
    { 
     InitializeComponent(); 



     model = new ObservableCollection<CarouselModel>(); 

     carousel.ItemsSource = model; 

     model.Add(new CarouselModel("http://seattlerats.org/wp-content/uploads/2015/03/Soccer-Field-Night.jpg")); 
     model.Add(new CarouselModel("http://seattlerats.org/wp-content/uploads/2015/03/Soccer-Field-Night.jpg")); 
     model.Add(new CarouselModel("http://seattlerats.org/wp-content/uploads/2015/03/Soccer-Field-Night.jpg")); 




    } 



} 

public class CarouselModel 
{ 
    public CarouselModel(string imageString) 
    { 
     Image = imageString; 
    } 
    private string _image; 
    public string Image 
    { 
     get { return _image; } 
     set { _image = value; } 
    } 
} 

的Appdelegate.cs:

 public override bool FinishedLaunching(UIApplication app, NSDictionary options) 
    { 


     ServicePointManager 
      .ServerCertificateValidationCallback += 
      (sender, cert, chain, sslPolicyErrors) => true; 


     global::Xamarin.Forms.Forms.Init(); 
     LoadApplication(new App()); 

     CarouselViewRenderer.Init(); 

     return base.FinishedLaunching(app, options); 
    } 

最后,我MainActivity.cs :

[Activity(Label = "PelotaJara", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity 
{ 
    protected override void OnCreate(Bundle bundle) 
    { 

     ServicePointManager 
.ServerCertificateValidationCallback += 
(sender, cert, chain, sslPolicyErrors) => true; 

     TabLayoutResource = Resource.Layout.Tabbar; 
     ToolbarResource = Resource.Layout.Toolbar; 

     base.OnCreate(bundle); 

     global::Xamarin.Forms.Forms.Init(this, bundle); 
     CarouselViewRenderer.Init(); 

     LoadApplication(new App()); 
    } 
} 
+1

你可以在GitHb上打开一个问题 –

+0

你在iOS上遇到的问题是什么? – AXE

+0

@ user3096081你有没有找到任何解决方案。 – Kishore

回答

0

我的问题可能不是你有但在这里我如何解决它到底是什么:它的版本CarouselView.FormsPlugin 4.4正常工作。 1和Xamarin形式2.3 ...工作正常更新旋转木马视图为4.4.3 iOS休息Android的工作正常,我提交了一个问题在Github上,似乎已经解决,所以尝试更新到最新版本和Xamarin形式为2.4 .0应该工作。这里是github上的问题:https://github.com/alexrainman/CarouselView/issues/210