大圖:這是我想要完成的。發送短信給某人。 UI/UX應該看起來類似於這樣的: 我似乎無法重寫UITextField leftViewRectForBounds方法
所以,目前,我正在使用3個單元的UITableView。前兩個(「To:」和「From:」)高44px。我在UITableViewCell的「contentView」中放置了一個UITextField。一切都很好。我可以讓用戶編輯單元格的內容。
現在,我使用leftView屬性來顯示帶有文本「To:」的UILabel。它可以工作,但「To」標籤總是在UITextField的左側(如下圖所示):
所以根據SDK文檔。左視圖模式是通過這種方法決定: leftViewRectForBounds:
根據討論:
你不應該直接調用此方法 。如果要將 左側覆蓋視圖置於不同的 位置,則可以覆蓋此方法 並返回新的矩形。
所以,我試圖重寫沒有太大的成功。如果有人有任何代碼片段,我將不勝感激。在底部的圖片中,我將「發件人」設置爲「發件人」,這是「黑客入侵」的一小部分,但我想正確地做。這是我已經嘗試過:
// override leftViewRectForBounds method:
- (CGRect)leftViewRectForBounds:(CGRect)bounds{
CGRect leftBounds = CGRectMake(bounds.origin.x + 30, 0, 45, 44);
return leftBounds;
}
和它的小變種,它似乎並不工作,所以任何幫助表示讚賞。謝謝!!!
完美的作品。謝謝! – okysabeni 2011-03-24 05:43:28