包含标签 Xamarin 的文章

Xamarin.Form跨平台访问系统图片库

这篇文章主要介绍如何在Xamarin.Form实现跨平台的调用系统图片库。 由于系统图片库是一个平台相关性比较大的系统工具,在Xamarin.Form上没有现成的统一API可用,所以我们只能利用DependencyService 来自己实现一个对系统图片库的调用。 下面,我们就一步一步……

阅读全文

使用C#实现byte[]转UIImage、Image

不啰嗦,直接上代码 byte[]转UIImage 在Xamarin.iOS项目中用。 public UIImage bytesToUIImage(byte[] data){ if (data == null) return null; GCHandle hObject = GCHandle.Alloc(data, GCHandleType.Pinned); IntPtr pObject = hObject.AddrOfPinnedObject(); NSData nsdata = NSData.FromBytes(pObject, (System.nuint)data.Length); UIImage image = UIImage.LoadFromData(nsdata); if (hObject.IsAllocated) hObject.Free(); return image; } catch (Exception e) { } return null; } byte[]转Image 在Xamarin.Form中用。 public Image bytesToImage(byte[] data){ var image = new Image(); image.Source = ImageSource.FromStream(() => new MemoryStream(data)); return image; } Stream转byte[……

阅读全文

在Xamarin.Form中实现iOS文件导出功能

近日在开发岁寒输入法的主题功能,为了实现导出主题包功能,颇费一番周折,最终代码也不复杂,我在本文中简单作个介绍。 我这里仍然是要使用DependencyService. 声明接口 namespace SuiHanLib { public interface IOutputTheme { void output(string path); } } 在iOS项目中实现 using System; using SuiHanLib; using Foundation; using UIKit; [assembly: Xamarin.Forms.Dependency(typeof(SuiHanIME.iOS.OutputTheme_iOS))] namespace SuiHanIME.iOS { public class OutputTheme_iOS : IOutputTheme { public OutputTheme_iOS() { } public void output(string path) { var nSUrl = NSUrl.FromFilename(path);……

阅读全文

用DependencyService实现跨平台开发

Xamarin.Form目前是微软提供的一种跨平台的开发技术,可以让开发者在iOS、Android和Window Phone等平台上共享60%以上的代码,从而节省维护多个平台代码的精力。但是完全不跟特定平台的代码打交道也是不可能的,为此,Xamarin.Form提供了一个强大的Ap……

阅读全文

Xamarin.From中的Data binding(数据绑定)(一)

事件和事件处理在任何编程开发过程中都是一件特别繁琐的事情。Xamarin.From中提供的Data binding特性,可以将两个对象的属性自动关联起来,从而极大地简化事件处理的流程。此外,Data binding还是MVVM(Model-View-ViewModel)应用架构中非常……

阅读全文

Xamarin.Form中如何使用Style

在Xamarin.Form中,我们可以这样定义界面的风格; <?xml version="1.0" encoding="utf-8"?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:ForStyle" x:Class="ForStyle.ForStylePage"> <StackLayout> <Button Text=" Carpe diem " HorizontalOptions="Center" VerticalOptions="CenterAndExpand" BorderWidth="3" TextColor="Red" FontSize="Large"/> <Button Text=" Sapere aude " HorizontalOptions="Center" VerticalOptions="CenterAndExpand" BorderWidth="3" TextColor="Red" FontSize="Large"/> <Button Text=" Discere faciendo " HorizontalOptions="Center" VerticalOptions="CenterAndExpand" BorderWidth="3" TextColor="Red" FontSize="Large"/> </StackLayout> </ContentPage> 下面是在Android平台和iOS平台的运行效果,至于WinPhone上的运行效果,我手头既没有WinPhone的真机也没有模拟器,就不给出……

阅读全文

Xamarin Studio中的iPhone真机调试

在实际开发过程中,有时光是使用虚拟机难以满足需要。本文向大家介绍一下使用Xamarin Studio进行真机调试的方法。 一、需要准备的东西: 一台安装有Xcode和Xamarin Studio的Mac电脑; 一部iPhone和一个Apple ID(现在不需要付费就可以在真机调试iOS程序,……

阅读全文

Xamarin.Form下WebView在iOS平台上的使用方法

Xamarin.Form的好处是可以开发跨平台的应用,但针对不同的平台,还需要做一些调整。如果你对Xamarin不了解的话,可以看我写的另一篇文章《我为什么选择Xamarin》。本文将主要介绍WebView在iOS平台上的使用方法。 需求 在我维护的项目中,我需要打开我在简书上写的应……

阅读全文

Xamarin.iOS下的UIScrollView+Masonry

Masonry是一个非常好用的布局工具,如果不知道如何在Xamarin.iOS中使用Masonry,可以参考我写的另一篇文章《在Xamarin.iOS中使用Masonry进行自动布局》。本文将讨论如何在UIScrollView中运用Masonry进行布局。 本文的做法是参考自《UI……

阅读全文

使用Xamarin.iOS开发中需要注意的坑

使用Xamarin进行开发的朋友,不必说,肯定是看中了这项技术所具有的跨平台特性,否则也不会跟我一样,弃官方正统不用,研究这种旁门左道。而今天我准备在这篇文章中介绍的是我在使用Xamarin.iOS开发时遇到的几个大坑,特号适合给从Android开发转过的朋友看,因为坑最可怕之处……

阅读全文