Added the Mac Xamarin.Forms sample

This commit is contained in:
Matthew Leibowitz 2017-04-23 16:01:59 -04:00
Родитель 8a612a62f4
Коммит 5e4c984854
25 изменённых файлов: 475 добавлений и 0 удалений

Просмотреть файл

@ -13,6 +13,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "iOS", "iOS\iOS.csproj", "{0
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharpSample.Platform.Shared", "..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.shproj", "{0CC41AB0-0C4C-4DAA-8F10-A249725EBF5D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mac", "Mac\Mac.csproj", "{91F5C72A-74D7-4C3F-8761-F692D4300660}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems*{05a70f82-973a-4402-adb9-2684d5e9f0c8}*SharedItemsImports = 4
@ -120,6 +122,30 @@ Global
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x64.Build.0 = Release|iPhoneSimulator
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x86.ActiveCfg = Release|iPhoneSimulator
{05A70F82-973A-4402-ADB9-2684D5E9F0C8}.Release|x86.Build.0 = Release|iPhoneSimulator
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|Any CPU.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|ARM.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|ARM.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhone.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x64.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x64.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x86.ActiveCfg = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Debug|x86.Build.0 = Debug|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|Any CPU.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|Any CPU.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|ARM.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|ARM.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhone.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhone.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x64.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x64.Build.0 = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x86.ActiveCfg = Release|Any CPU
{91F5C72A-74D7-4C3F-8761-F692D4300660}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -0,0 +1,37 @@
using AppKit;
using Foundation;
using Xamarin.Forms;
using Xamarin.Forms.Platform.MacOS;
namespace SkiaSharpSample.FormsSample.Platform
{
[Register("AppDelegate")]
public class AppDelegate : FormsApplicationDelegate
{
private NSWindow window;
public AppDelegate()
{
var style = NSWindowStyle.Closable | NSWindowStyle.Resizable | NSWindowStyle.Titled;
var rect = new CoreGraphics.CGRect(200, 1000, 1024, 768);
window = new NSWindow(rect, style, NSBackingStore.Buffered, false);
window.TitleVisibility = NSWindowTitleVisibility.Hidden;
}
public override NSWindow MainWindow => window;
public override bool ApplicationShouldTerminateAfterLastWindowClosed(NSApplication sender) => true;
public override void DidFinishLaunching(NSNotification notification)
{
Forms.Init();
SamplesInitializer.Init();
LoadApplication(new App());
base.DidFinishLaunching(notification);
}
}
}

Просмотреть файл

@ -0,0 +1,222 @@
{
"images": [
{
"size": "29x29",
"scale": "1x",
"idiom": "iphone"
},
{
"size": "29x29",
"scale": "2x",
"idiom": "iphone"
},
{
"size": "29x29",
"scale": "3x",
"idiom": "iphone"
},
{
"size": "40x40",
"scale": "2x",
"idiom": "iphone"
},
{
"size": "40x40",
"scale": "3x",
"idiom": "iphone"
},
{
"size": "57x57",
"scale": "1x",
"idiom": "iphone"
},
{
"size": "57x57",
"scale": "2x",
"idiom": "iphone"
},
{
"size": "60x60",
"scale": "2x",
"idiom": "iphone"
},
{
"size": "60x60",
"scale": "3x",
"idiom": "iphone"
},
{
"size": "29x29",
"scale": "1x",
"idiom": "ipad"
},
{
"size": "29x29",
"scale": "2x",
"idiom": "ipad"
},
{
"size": "40x40",
"scale": "1x",
"idiom": "ipad"
},
{
"size": "40x40",
"scale": "2x",
"idiom": "ipad"
},
{
"size": "50x50",
"scale": "1x",
"idiom": "ipad"
},
{
"size": "50x50",
"scale": "2x",
"idiom": "ipad"
},
{
"size": "83.5x83.5",
"scale": "2x",
"idiom": "ipad"
},
{
"size": "72x72",
"scale": "1x",
"idiom": "ipad"
},
{
"size": "72x72",
"scale": "2x",
"idiom": "ipad"
},
{
"size": "76x76",
"scale": "1x",
"idiom": "ipad"
},
{
"size": "76x76",
"scale": "2x",
"idiom": "ipad"
},
{
"role": "notificationCenter",
"size": "24x24",
"subtype": "38mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "notificationCenter",
"size": "27.5x27.5",
"subtype": "42mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "companionSettings",
"size": "29x29",
"scale": "2x",
"idiom": "watch"
},
{
"role": "companionSettings",
"size": "29x29",
"scale": "3x",
"idiom": "watch"
},
{
"role": "appLauncher",
"size": "40x40",
"subtype": "38mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "longLook",
"size": "44x44",
"subtype": "42mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "quickLook",
"size": "86x86",
"subtype": "38mm",
"scale": "2x",
"idiom": "watch"
},
{
"role": "quickLook",
"size": "98x98",
"subtype": "42mm",
"scale": "2x",
"idiom": "watch"
},
{
"filename": "skia_16x16.png",
"size": "16x16",
"scale": "1x",
"idiom": "mac"
},
{
"filename": "skia_32x32.png",
"size": "16x16",
"scale": "2x",
"idiom": "mac"
},
{
"filename": "skia_32x32.png",
"size": "32x32",
"scale": "1x",
"idiom": "mac"
},
{
"filename": "skia_64x64.png",
"size": "32x32",
"scale": "2x",
"idiom": "mac"
},
{
"filename": "skia_128x128.png",
"size": "128x128",
"scale": "1x",
"idiom": "mac"
},
{
"filename": "skia_256x256.png",
"size": "128x128",
"scale": "2x",
"idiom": "mac"
},
{
"filename": "skia_256x256.png",
"size": "256x256",
"scale": "1x",
"idiom": "mac"
},
{
"filename": "skia_512x512.png",
"size": "256x256",
"scale": "2x",
"idiom": "mac"
},
{
"filename": "skia_512x512.png",
"size": "512x512",
"scale": "1x",
"idiom": "mac"
},
{
"filename": "skia_1024x1024.png",
"size": "512x512",
"scale": "2x",
"idiom": "mac"
}
],
"info": {
"version": 1,
"author": "xcode"
}
}

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 28 KiB

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 3.1 KiB

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 935 B

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 5.9 KiB

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.5 KiB

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 13 KiB

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 2.7 KiB

Просмотреть файл

@ -0,0 +1,6 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Просмотреть файл

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleName</key>
<string>SkiaSharp for Xamarin.Forms</string>
<key>CFBundleIdentifier</key>
<string>com.skiasharp.samples.forms</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSMinimumSystemVersion</key>
<string>10.10</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>NSHumanReadableCopyright</key>
<string>(c) Matthew Leibowitz</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>XSAppIconAssets</key>
<string>Assets.xcassets/AppIcon.appiconset</string>
</dict>
</plist>

Просмотреть файл

@ -0,0 +1,131 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{91F5C72A-74D7-4C3F-8761-F692D4300660}</ProjectGuid>
<ProjectTypeGuids>{A3F8F2AB-B479-4A4A-A458-A89E7DC349F1};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<OutputType>Exe</OutputType>
<RootNamespace>SkiaSharpSample.FormsSample.Platform</RootNamespace>
<AssemblyName>Mac</AssemblyName>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<TargetFrameworkIdentifier>Xamarin.Mac</TargetFrameworkIdentifier>
<MonoMacResourcePrefix>Resources</MonoMacResourcePrefix>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>__UNIFIED__;DEBUG;__MACOS__</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<EnableCodeSigning>false</EnableCodeSigning>
<CodeSigningKey>Mac Developer</CodeSigningKey>
<CreatePackage>false</CreatePackage>
<EnablePackageSigning>false</EnablePackageSigning>
<IncludeMonoRuntime>false</IncludeMonoRuntime>
<UseSGen>true</UseSGen>
<UseRefCounting>true</UseRefCounting>
<Profiling>true</Profiling>
<HttpClientHandler></HttpClientHandler>
<LinkMode></LinkMode>
<XamMacArch></XamMacArch>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType></DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<DefineConstants>__UNIFIED__;__MACOS__</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<EnableCodeSigning>false</EnableCodeSigning>
<CreatePackage>true</CreatePackage>
<EnablePackageSigning>false</EnablePackageSigning>
<IncludeMonoRuntime>true</IncludeMonoRuntime>
<UseSGen>true</UseSGen>
<UseRefCounting>true</UseRefCounting>
<LinkMode>SdkOnly</LinkMode>
<HttpClientHandler></HttpClientHandler>
<XamMacArch></XamMacArch>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="Xamarin.Mac" />
<Reference Include="Xamarin.Forms.Core">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Core.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Platform.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform.macOS">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Platform.macOS.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Xaml">
<HintPath>..\packages\Xamarin.Forms.2.3.5.233-pre1\lib\Xamarin.Mac\Xamarin.Forms.Xaml.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp">
<HintPath>..\packages\SkiaSharp.1.57.1\lib\XamarinMac\SkiaSharp.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Views.Mac">
<HintPath>..\packages\SkiaSharp.Views.1.57.1\lib\XamarinMac\SkiaSharp.Views.Mac.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Views.Forms">
<HintPath>..\packages\SkiaSharp.Views.Forms.1.57.1\lib\XamarinMac\SkiaSharp.Views.Forms.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Svg">
<HintPath>..\packages\SkiaSharp.Svg.1.57.1\lib\netstandard1.3\SkiaSharp.Svg.dll</HintPath>
</Reference>
<Reference Include="SkiaSharp.Extended">
<HintPath>..\packages\SkiaSharp.Extended.1.57.1-beta\lib\netstandard1.3\SkiaSharp.Extended.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\Contents.json" />
<ImageAsset Include="Assets.xcassets\Contents.json" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_1024x1024.png" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_512x512.png" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_256x256.png" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_128x128.png" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_64x64.png" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_32x32.png" />
<ImageAsset Include="Assets.xcassets\AppIcon.appiconset\skia_16x16.png" />
</ItemGroup>
<ItemGroup>
<None Include="Info.plist" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Compile Include="Main.cs" />
<Compile Include="AppDelegate.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="Resources\" />
</ItemGroup>
<ItemGroup>
<BundleResource Include="Resources\configure.png" />
<BundleResource Include="Resources\configure%402x.png" />
<BundleResource Include="Resources\configure%403x.png" />
<BundleResource Include="..\..\SkiaSharpSample.Shared\Media\content-font.ttf">
<Link>Resources\content-font.ttf</Link>
</BundleResource>
<BundleResource Include="Resources\hamburger.png" />
<BundleResource Include="Resources\hamburger%402x.png" />
<BundleResource Include="Resources\hamburger%403x.png" />
<BundleResource Include="Resources\ic_launcher.png" />
<BundleResource Include="Resources\slideshow.png" />
<BundleResource Include="Resources\slideshow%402x.png" />
<BundleResource Include="Resources\slideshow%403x.png" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Core\Core.csproj">
<Project>{E01FBABA-8DA1-432B-9253-F4ABE13A3A6A}</Project>
<Name>Core</Name>
</ProjectReference>
</ItemGroup>
<Import Project="..\..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems" Label="Shared" Condition="Exists('..\..\SkiaSharpSample.Platform.Shared\SkiaSharpSample.Platform.Shared.projitems')" />
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Mac\Xamarin.Mac.CSharp.targets" />
<Import Project="..\packages\Xamarin.Forms.2.3.5.233-pre1\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+Xamarin.iOS10+xamarinmac20\Xamarin.Forms.targets" Condition="Exists('..\packages\Xamarin.Forms.2.3.5.233-pre1\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+Xamarin.iOS10+xamarinmac20\Xamarin.Forms.targets')" />
<Import Project="..\packages\SkiaSharp.1.57.1\build\XamarinMac\SkiaSharp.targets" Condition="Exists('..\packages\SkiaSharp.1.57.1\build\XamarinMac\SkiaSharp.targets')" />
</Project>

Просмотреть файл

@ -0,0 +1,14 @@
using AppKit;
namespace SkiaSharpSample.FormsSample.Platform
{
static class MainClass
{
static void Main(string[] args)
{
NSApplication.Init();
NSApplication.SharedApplication.Delegate = new AppDelegate();
NSApplication.Main(args);
}
}
}

Двоичные данные
samples/FormsSample/Mac/Resources/configure.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 347 B

Двоичные данные
samples/FormsSample/Mac/Resources/configure@2x.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 611 B

Двоичные данные
samples/FormsSample/Mac/Resources/configure@3x.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.2 KiB

Двоичные данные
samples/FormsSample/Mac/Resources/hamburger.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 143 B

Двоичные данные
samples/FormsSample/Mac/Resources/hamburger@2x.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 150 B

Двоичные данные
samples/FormsSample/Mac/Resources/hamburger@3x.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 174 B

Двоичные данные
samples/FormsSample/Mac/Resources/ic_launcher.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 7.5 KiB

Двоичные данные
samples/FormsSample/Mac/Resources/slideshow.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 352 B

Двоичные данные
samples/FormsSample/Mac/Resources/slideshow@2x.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 568 B

Двоичные данные
samples/FormsSample/Mac/Resources/slideshow@3x.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.1 KiB

Просмотреть файл

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="SkiaSharp" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Extended" version="1.57.1-beta" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Svg" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Views" version="1.57.1" targetFramework="xamarinmac20" />
<package id="SkiaSharp.Views.Forms" version="1.57.1" targetFramework="xamarinmac20" />
<package id="Xamarin.Forms" version="2.3.5.233-pre1" targetFramework="xamarinmac20" />
</packages>