我想使用MVVMCross將一個屬性的字符串綁定到UILabel。要綁定一個普通字符串我只想做:如何綁定NSAttributeString(或NSMutableAttributedString)
set.Bind(MyLabel).To(vm => vm.MyString);
但我需要一個字符串,其中一部分文本將使用一種顏色,一個字體的大小,另一部分將使用不同的顏色和不同的字體大小。如果這是靜態的,沒問題,我會在界面生成器中添加一個標籤,並將其設置爲「歸因」,然後設置任何字體選項,我想要哪些部分的字符串我需要。
所以我想用Mvvmcross,我可能會需要一個轉換器把我的源字符串轉換成屬性串,所以我試圖創建從MvxValueConverter<string,NSMutableAttributedString>
一個轉換器,只是做這在其Convert
方法:
return new NSMutableAttributedString(value);
最終我會添加一些不同的屬性。不幸的是,這不起作用。如果我把我的結合是這樣的:
set.Bind(MyLabel).To(vm => vm.MyString).WithConversion("MyConverter");
看來,MvvmCross少了點在屬性串一個.ToString
,它作爲顯示:
Some Text {}
注{}
不是原始字符串的一部分。
有沒有辦法綁定MVVMCross中的屬性字符串?
感謝斯圖爾特。那樣做了。感謝鏈接,處理屬性字符串的API有點令人困惑。 –