Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
806 views
in Technique[技术] by (71.8m points)

c# - MvvmCross Monotouch - Fail to bind Properties on a real iPad, but it works on the Simulator

I am working with MvvmCross Monotouch.

Here is the Binding Code that actually works very well on the iOS Simulator.

{ this, "{'Title':{'Path':'NavigationBarTitle'}}

However, it does not work when I deploy it on my real iPad (iPad 2).

Application Output:
===================
MvxBind: Warning:   0.69 Failed to create target binding for from NavigationBarTitle to Title

I am glad to see it works on the iOS Simulator but, is there any reason why it does not work on the real iPad?

Patrick

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

One situation I've seen this type of error occur in is in release builds where the monotouch linker optimises the image size and removes the apparently unused property required for binding.

To workaround this, I generally include a fake bit of code to trick the linker into including the required properties - e.g. Here's a monodroid sample file which does the same sort of thing:

https://github.com/slodge/MvvmCross/blob/master/Sample%20-%20BestSellers/BestSellers/BestSellers.Droid/LinkerIncludePlease.cs

This is one of the disadvantages of using mvvmcross currently - it can lead to larger binary image sizes.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...