Xamarin.Mac+MvvmCross에서 앱 개발을 시작할 준비(2015년 1월 버전)

3413 단어 XamarinC#

Problem



Xamarin.Mac 환경에서는 MvvmCross의 NuGet을 통해 추가할 수 없습니다. 할 수 있을 전망도 없습니다 (GitHub에서 여러 번 Issue가되었습니다). NuGet의 사양상 하지 않는 것입니다.

현재 MvvmCross를 사용하려면 GitHub에서 최신 것을 끌어 빌드합니다.

Limitation



지금까지 동작을 확인할 수 있었던 것은 ClassicAPI 프로젝트뿐입니다.
Debug 빌드에서는 왜 잘 데이터 바인딩이 작동하지 않는 것 같습니다. Release 빌드에서 제대로 작동합니다.

빌드



그럼 GitHub 에서 복제하자. 서브 모듈로 하는 것도 좋을까 생각합니다.3.5 브랜치를 체크아웃합니다.

사용하는 솔루션은 MvvmCross_All_Incl_Mac.sln이지만 열어도 XamMac 라이브러리에 대한 참조를 해결할 수 없으므로 csproj 파일을 손으로 수정합니다. 수정하는 것은 다음 프로젝트입니다.
  • Cirrious/Cirrious.MvvmCross.Binding.XamMac/Cirrious.MvvmCross.Binding.XamMac.csproj
  • Cirrious/Cirrious.MvvmCross.XamMac/Cirrious.MvvmCross.XamMac.csproj
  • CrossCore/Cirrious.CrossCore.XamMac/Cirrious.CrossCore.XamMac.csproj

  • 수정은 모든 프로젝트에서 동일하며 ProjectTypeGuids 요소 추가 및 XamMac 요소 수정입니다.

    7행째 부근
        <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
        <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    +    <ProjectTypeGuids>{42C0BBD9-55CE-4FC1-8D90-A7348ABAFB23};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
        <ProjectGuid>{8C1700FB-DB8C-45F1-8888-CD4E32A7C39E}</ProjectGuid>
        <OutputType>Library</OutputType>
    

    36행째 부근
    -    <Reference Include="XamMac, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065, processorArchitecture=MSIL" />
    +    <Reference Include="XamMac" />
    

    ProjectTypeGuids 요소의 값이 Xamarin.Mac 대상의 프로젝트 인 식별 값이므로 XamMac 라이브러리의 참조를 확인할 수 있습니다.

    수정이 완료되면 솔루션을 열고 다음 프로젝트를 빌드합니다. or 내 프로젝트에 추가합니다.
  • CrossCore/Cirrious.CrossCore
  • CrossCore/Cirrious.CrossCore.XamMac
  • MvvmCross/XamMac/Cirrious.MvvmCross.Binding.XamMac
  • MvvmCross/XamMac/Cirrious.MvvmCross.XamMac
  • MvvmCross/Cirrious.MvvmCross
  • MvvmCross/Cirrious.MvvmCross.Binding
  • MvvmCross/Cirrious.MvvmCross.Localization
  • PortableSupport/Mac/System.Windows.Mac

  • Conclusion



    이제 MvvmCross 라이브러리를 Xamarin.Mac 프로젝트에 추가 할 수 있습니다.
    Core 프로젝트의 추가로부터 먼저에 대해서는 Using MvvmCross in Xamarin.Mac 에서 해설하고 있으므로 참고가 되어 주세요.

    좋은 웹페이지 즐겨찾기