2010-08-18 62 views
2

我决定在使用MonoTouch进行开发时使用.xib文件的位置。MonoTouch - XIB或不是XIB?

我目前的项目需要使用iPhone和iPad,所以我想知道是否即使使用Interface Builder也是值得的。我已经必须删除一些设计器文件,以便2个不同的视图(每个设备一个)转到同一个控制器。我也是唯一一个在这方面工作的人,并且没有设计师在IB工作。

这里有几个问题:

  • 是否有任何性能优势/减少使用XIBs?
  • 是否有任何软件设计问题,从MVC等减损,这样或那样会抑制?
  • 使用XIB有什么多功能性的缺点,就像用XIB实现某些视图的延迟加载很难吗?

想法?

回答

5

我最近不得不作出同样的决定,我决定去无锡。我发现更容易看到什么时候发生了什么。由于iPhone和iPad界面相对简单,我没有从IB获得巨大的收益,但是MonoDevelop和IB之间有很多跳跃。像你一样,我不是直接与设计师合作。

我在IB中做初始布局来获得坐标。之后,我只是直接在代码中进行修改。

减少文件也有好处。

另一个优点是提问。向代码块和xib文件发送电子邮件比较容易。我还可以轻松地额外提供核心代码,以便简洁地指定问题。

至于你的问题......我发现当我完全控制时,根据MVC思考和构建我的项目更容易 - 但也许这只是我。对于我的项目,我没有真正发现一些我认为xib文件会更好的东西。至于表现,我还没有做过任何测试,所以不能就此提供明智的意见。我在某个地方看过一篇文章,其中的差异可以忽略不计,但是一个快速搜索没有挖掘出来。我会尝试找到它今晚。

+0

你知道某个地方的示例项目吗?我可以查看某人在没有XIB的情况下做了什么吗?一个跟随MVC?我发现了无XIB的例子,但它们通常都是WinForms,看起来很糟糕,而且设计得很糟糕,并且有一个充满事件处理程序的单一类。 – jonathanpeppers 2010-08-19 19:12:47

+0

看看tweetsharp项目 - 它使用的是MonoTouch.Dialog – iwayneo 2010-08-20 08:01:13

+0

只有这个问题是,我们即将接受一次完整的ui检修,并在所有组件均为100%c#时执行此操作。我仍然喜欢这个XIB - 他们往往会让你的代码变得一团糟。真正的尖端,苹果。 – iwayneo 2010-08-23 08:14:05

3

我们减少了xib,并且没有xib的视图看起来更加高效。我发现苹果对MVC的解释令人困惑。

+0

我甚至觉得苹果对MVC的解释甚至不是MVC。任何标准应用程序的“控制器”实现中都有太多的UI代码。但是,这可能是B/C我通常与WPF和MVVM一起工作 - 这远远超出了软件设计的角度。 – jonathanpeppers 2010-08-20 18:32:04