0

プレースホルダーとは、テキストフィールドがある場合に得られるものを意味します...

 UITextField *myTextField;
 myTextField.placeholder = @"Enter your name";

textLabelであるdetailTextLabelにはプレースホルダープロパティがないと思うので、回答者はノーだと思います。UITextFieldでカスタムセルを使用する必要があります。

提案をありがとう。

ジョン

4

3 に答える 3

2

UITextFieldプレースホルダーは、フィールドが空で、ユーザーが編集していないときに表示されるテキストです。

詳細テキストラベルはUILabelです。AUILabelはユーザー編集をサポートしていないため、placeholderプロパティを持つ理由はありません。プレースホルダーテキストのように見せたい場合は、Patrick S.が提案するように、テキストの色を灰色に設定するだけです。

ただし、編集可能な詳細テキストが必要な場合はUITextField、セルに独自のテキストを追加し、の代わりにそのcontentViewテキストフィールドを使用する必要があります。次に、テキストフィールドのプロパティを設定できます。detailTextLabelplaceholder

于 2012-07-25T03:11:37.160 に答える
0

私はあなたの最良の選択肢は次のようになると思います:

if([UItextView.text length] == 0)
   {
       UItextView.text = @"placeholder";
       UItextView.textColor = [UIColor lightGrayColor];
       UItextView.tag = 0;
   }

同じ目的を果たします。

于 2012-07-25T03:07:19.037 に答える
0

テキストフィールドのプレースホルダーテキストフォントを変更します

UITextFieldのサブクラスを作成し、drawPlaceholderInRectを上書きします。

- (void) drawPlaceholderInRect:(CGRect)rect {
    [[self placeholder] drawInRect:rect withFont:[UIFont systemFontOfSize:16.0]];
}
于 2012-07-25T05:04:17.333 に答える