2013-01-14 111 views
1

我想實現自定義文本字段。這裏是什麼,我想實現一個截圖:
如何更改UITextField的形狀?

enter image description here

所以我有細胞UITableView,並在每個小區我有幾個文本字段:一個用於date,一爲name,一個用於theme,另一個用於text。但是UI需要themetext彼此相鄰(如您在圖片中看到的那樣)。我想實現這個作爲一個單一UITextField,但據我所知,UITextField只支持一種字體。因此,也許有人會給我一個建議,如何實現截圖中顯示的設計 - 我必須繪製自定義文本字段,還是有更簡單的解決方案?任何代碼示例或命題都會有所幫助。

+0

,就能讓您只能用這種方法在一定範圍內的字符串添加屬性您將主題文本字段放在主文本的頂部,以便它們都佔據相同的觀看矩形?如果是這樣,那麼您可能可以即時計算主題實際佔用第一行的空間大小,並以編程方式向文本字段添加空格。 –

+1

檢查了這一點http://stackoverflow.com/questions/3586871/bold-non-bold-text-in-a-single-uilabel – alex

+0

你想只顯示這個文本或它應該是可編輯的?從你的截圖看,它看起來不像是應該可編輯的。然後你不需要'UITextField',每個部分只需要一個'UILabel'。 – Sven

回答

1

對於iOS 6

您可以設置一個UITextField的屬性串:

@property(nonatomic,copy) NSAttributedString *attributedText; 

我建議使用NSMutableAttributedString並利用多態性。

可變屬性字符串可以爲每個字符串保存不同的屬性。

- (void)setAttributes:(NSDictionary *)attributes range:(NSRange)aRange; 

對於iOS 5

直接使用此UITextField的屬性:

- (void)setAttributes:(NSDictionary *)attributes range:(NSRange)aRange; 
+2

請注意,「JavasText」僅適用於iOS 6。 – benzado

+0

我爲iOS 5添加了一個可能的解決方案。 –