<分区>
我正在寻找一个跨平台库,但由于我目前无法访问 Mac,这让事情变得有点复杂。
计划是从 Android 版本开始,然后在我可以访问 Mac 时实现 iOS 版本(我有一个 Hackintosh,但它非常慢,有时可能需要几个小时才能获得它才能正确启动)。 我一直在研究 Xamarin,因为我通常使用 .NET C#。 据我所知,Xamarin 将在平台之间共享大部分业务逻辑,但 UI 必须单独完成。我认为这对我的目的来说听起来不错?与 Phonegap 相比具有更好的性能也非常好,因为随着时间的推移,该应用的复杂性可能会增加很多。
这种方法是否有任何限制因素,或者是否有其他库更适合这种方法?目标是在将代码移到 Mac 上完成之前在 Windows 上完成尽可能多的必要工作。万一我无法使用 Mac,我将不得不使用 Hackintosh,因此无需进行比绝对最小值更多的编码,这将是非常好的。
最佳答案
看看 Xamarin.Forms http://xamarin.com/forms
如果您不使用特定于平台的代码(自定义渲染器等),您不仅可以共享逻辑,还可以共享 UI 代码。优点是您正在使用 .NET 方式(XAML、绑定(bind)等)做很多事情
简短示例:
using Xamarin.Forms;
var profilePage = new ContentPage {
Title = "Profile",
Icon = "Profile.png",
Content = new StackLayout {
Spacing = 20, Padding = 50,
VerticalOptions = LayoutOptions.Center,
Children = {
new Entry { Placeholder = "Username" },
new Entry { Placeholder = "Password", IsPassword = true },
new Button {
Text = "Login",
TextColor = Color.White,
BackgroundColor = Color.FromHex("77D065") }}}
};
var settingsPage = new ContentPage {
Title = "Settings",
Icon = "Settings.png",
(...)
};
var mainPage = new TabbedPage { Children = { profilePage, settingsPage } };
关于android - Xamarin 是一个很好的跨平台库,可以从 Android 开始,然后再转向 iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31141668/
相关文章:
ios - 如何将 View 从 XIB 文件移动到 Xcode 项目中的 Storyboard ?
javascript - PhoneGap/Cordova "click"在浏览器中工作,但不在 Developer App 上工作?
java - 安卓/Java : how to define a specific class usable in an xml layout file?
android - ionic 1 : Problems building app to versions previous to android 6
java - 如何知道在 Google Maps v2 for Android 上点击了哪个标记?