Tag: xamarin.ios

应用程序购买时,应用程序崩溃

有时购买应用程序内购买的东西,我的应用程序崩溃。 大多数情况下,它工作正常,但有时应用程序崩溃没有任何错误(我在debugging模式下testing)。 要设置应用内购买(非消费品),我使用了以下示例: https : //github.com/conceptdev/xamarin-samples/tree/master/InAppPurchase/NonConsumables 处理应用内购买的类看起来像这样: public class InAppPurchaseManager : SKProductsRequestDelegate { public static NSString InAppPurchaseManagerProductsFetchedNotification = new NSString("InAppPurchaseManagerProductsFetchedNotification"); public static NSString InAppPurchaseManagerTransactionFailedNotification = new NSString("InAppPurchaseManagerTransactionFailedNotification"); public static NSString InAppPurchaseManagerTransactionSucceededNotification = new NSString("InAppPurchaseManagerTransactionSucceededNotification"); public static NSString InAppPurchaseManagerRequestFailedNotification = new NSString("InAppPurchaseManagerRequestFailedNotification"); SKProductsRequest productsRequest; CustomPaymentObserver theObserver; SKProduct[] products; public static NSAction Done {get;set;} public InAppPurchaseManager () […]

单点触摸 – QLPreviewController问题

我正在尝试使用QLPreviewController来查看PDF文件并将其发送,但是在预览PDF文档后,操作button有问题。 当我按动作button(在右上angular)应用程序崩溃,我得到:“未处理的托pipe的exception:抛出的Objective-Cexception名称:NSInternalInconsistencyException原因:UIDocumentInteractionController:无效的scheme(null)。只支持文件scheme。 MonoTouch.Foundation.MonoTouchException)” 我做了一些研究,并且认为如果您从互联网下载文件或文件types不是“file:// ……….”,则可能会发生此问题。 我的NSUrl是这种格式,所以我不知道为什么我有这个错误。 有人有什么想法吗? 谢谢 这是我的代码来调用控制器: QLPreviewController previewController= new QLPreviewController(); previewController.DataSource=new MyQLPreviewControllerDataSource(); this.PresentViewController(previewController,true, null); 这是我的数据源代码: public class MyQLPreviewControllerDataSource : QLPreviewControllerDataSource { public override int PreviewItemCount (QLPreviewController controller) { return 1; } public override QLPreviewItem GetPreviewItem (QLPreviewController controller, int index) { string fileName = @"example.pdf"; var documents = Environment.GetFolderPath (Environment.SpecialFolder.MyDocuments); var library = […]

初始化从另一个ViewController接收数据

我有两个ViewController类。 首先 – HarachieRolliController。 Second – DetailTovarProsmotr 我在Xamarin iOS(C#)的MainStoryboard文件中创build它 这里截图 点击button_arrow_product002后: 1)需要打开DetailTovarProsmotr 2)需要将数据传递给DetailTovarProsmotr并显示在一些字段中,例如(titleproduct001),这是string。 一stream的代码: partial class HarachieRolliController : UIViewController { public HarachieRolliController (IntPtr handle) : base (handle) { } public async override void ViewDidLoad () { base.ViewDidLoad (); // Perform any additional setup after loading the view, typically from a nib. string url2 = "http://papajohn.pp.ua/?mkapi=getProductsByCat&cat_id=83"; […]

Xamarin – iOS在地图上的多个多边形

我目前正在按照这个教程向地图添加一个多边形。 我需要能够添加多个多边形到我的地图,所以我稍微改变了代码,以便我可以使用addOverlays ,它接受一组IMKOverlay对象,而不是一个addOverlay , addOverlay需要一个IMKOverlay对象。 这不起作用,但它只绘制地图上的第一个多边形! void addPolygonsToMap() { overlayList = new List<IMKOverlay>(); for (int i = 0; i < polygons.Count; i++) { CLLocationCoordinate2D[] coords = new CLLocationCoordinate2D[polygons[i].Count]; int index=0; foreach (var position in polygons[i]) { coords[index] = new CLLocationCoordinate2D(position.Latitude, position.Longitude); index++; } var blockOverlay = MKPolygon.FromCoordinates(coords); overlayList.Add(blockOverlay); } IMKOverlay[] imko = overlayList.ToArray(); nativeMap.AddOverlays(imko); } […]

Xamarin窗体 – 如何使iOS ListView本机分组样式与头?

我已经在Xamarian窗体中创build了一个使用MVVM和绑定的列表视图来创build一个分组列表。我希望列表视图具有适用于iOS的UITableView样式组。 我试图通过我在网上find的自定义渲染器来创build这个,但是结果看起来不对,因为一切都是灰色的。 首先,我们将从图像开始。 这就是我想要的表格看起来像我从原生的iOS版本拿来的: 当我添加自定义渲染器时,我得到以下Xamarin表单版本: 我玩弄背景颜色,试图使它们透明,我发现,当我做了listview背景颜色=“透明”,原来的列表视图下。 显示在以下两张图片中。 xaml页面如下所示: <StackLayout Spacing="0"> <SearchBar x:Name="SearchBarControl" Text="{Binding SearchText}" SearchCommand="{Binding SearchCommand}" Placeholder="Search"></SearchBar> <ListView x:Name="HistoryList" IsGroupingEnabled="True" GroupDisplayBinding="{Binding Title}" ItemsSource="{Binding History}" CachingStrategy="RecycleElement"> <ListView.ItemTemplate> <DataTemplate> <TextCell Text="{Binding TagContent}" Detail="{Binding DateAndTime}" /> </DataTemplate> </ListView.ItemTemplate> </ListView> </StackLayout> 我相信自定义渲染器应该将其分组: [assembly: ExportRenderer(typeof(ListView), typeof(iOSListViewCustomRenderer))] namespace Test.iOS.CustomRenderer { public class iOSListViewCustomRenderer : ListViewRenderer { protected override void OnElementChanged(ElementChangedEventArgs<ListView> e) […]

MonoTouch连接到Azure ACS,Azure SQL / Azure WCF

我将制作iOS应用程序,并且想知道与新语言Cocoa开发的差异,还是使用Mono-Touch的旧语言C# 应用程序的要求应该是使用Azure,存储/检索信息,频繁地存储在本地设备上,内容浏览和令牌login到门户网站,截止date是从今天起两个月,我以前从未开发任何iPhone / iPad应用程序。 我可以知道哪个更容易启动,是否有任何资源单声道? 而我发现如果我可以使用旧的编程语言是好的,但似乎没有这样的事情来支持monoTouchazure色的发展… 感谢您的回复。

MonoTouch:如何按照苹果幻灯片“build立报刊应用程序”(Session 504)中的说明逐步下载PDF?

这是一个后续: MonoTouch:如何保存一个庞大的PDF从URL递增? 我试图按照报亭演示文稿(“build设报刊应用”,Session 504)的Apple幻灯片指示的指导方针: http://adcdownload.apple.com//wwdc_2011/adc_on_itunes__wwdc11_sessions__pdf/504_building_newsstand_apps.pdf Applebuild议使用NSURLConnection Delegate和NKAssetDownload来下载和恢复报亭内容,但我不明白MonoTouch中的C#代码与幻灯片中显示的Obj-C中的相同。 问题是如何从我的MonoTouch iPhone / iPad报亭应用程序中的URL下载一个巨大的PDF文件,这个PDF通常太大而不适合内存。 要按照幻灯片中的说明逐步执行下载,而不是将所有下载的数据附加到NSData中,并在下载的最后,并在获取所有数据时将其存储到文件中,则需要单独执行下载线程并追加到一个文件,每个接收块和释放我的记忆。 同时,我需要确定的是,如果连接断开或应用程序崩溃,下载将自动从最后一个块中恢复,而不会损坏文件。 在MonoTouch中处理这个问题有什么更好的办法,而不会冒着看到苹果拒绝我的应用程序的风险? 提前致谢!

使用DecelerationEnded会干扰其他callback

我试图使用DecelerationEndedcallback与MT.Dialog元素上的“Tapped”callback一起使用。 我不能让这两个人同时工作。 当DecelerationEndedcallback被注释掉时,“tapped”callback工作。 当它被注释时,“tapped”callback不会被触发(而DecelerationEnded不会)。 当DecelerationEnded调用移动到Root的设置之上时,button“tapped”的callback工作,但是DecelerationEndedcallback没有。 延迟callback设置,直到ViewWillAppear也不能解决任何问题。 任何解决scheme 示例代码: public class TestController : DialogViewController { public TestController () : base(UITableViewStyle.Plain, null, true) { // Create list of 20 buttons. Section s = new Section(); for (int i = 0; i < 20; i++ ) { s.Add(new StringElement("test " + i, () => { Console.WriteLine("Tapped"); // Tapped […]

无法使用Xamarin和WCF访问webservice

我想要使​​用Xamarin和WCF的公共Web服务。 对于这个演示,我将使用Xamarin.iOS 。 这是我试图消费的(公共)web服务: http://www.webservicex.net/globalweather.asmx?WSDL 在Xamarin Studio中,我使用web服务的URL添加一个Web引用 。 所选框架被设置为Windows Communication Foundation(WCF) 。 现在,我正在使用下面的代码来连接服务: var _client = new GlobalWeatherSoapClient(); _client.BeginGetWeather ("Berlin", "Germany", (ar) => { var result = _client.EndGetWeather(ar); }, null); 当执行这个代码时,我得到一个System.NullReferenceException 。 这是问题,为什么它不正确? 最奇怪的部分:当我不使用WCF,但select.NET 2.0 Web服务作为框架,似乎一切工作正常。 我看不出我的WCF代码有什么问题 – 根据文档 ,一切都应该正常工作。 我希望有人能帮助我! 提前致谢!

放大镜在UITextField中显示不相关的内容

我在Xamarin开发了一个iOS应用程序。 我在UIScrollview中有几个UITExtFields。 当用户触摸UITetField时,我将设置scrollview的contentOffSet,以便在出现键盘时可以看到它。 this.txtUsername.ShouldBeginEditing += delegate { scrl.SetContentOffset (new CoreGraphics.CGPoint (0, this.txtUsername.ShouldBeginEditing.Frame.Location.Y – 50),true); return true; }; 这工作正常。 但是当我长按textField时,放大镜显示并显示不相关的细节。 它显示滚动视图后面的细节。 主要的问题是 – 即使我推新视图控制器,这是SignupView控制器,其显示上一屏图像在放大镜。 它只有这个应用程序没有问题,我也有类似的问题,在其他应用程序也是使用Xamarin开发的 我已经上传了我的应用程序的video,以更好地了解我在这里面临的问题。