12

こんにちは、ビューのデフォルトの灰色の境界線を削除したいと思います。これを行うと、表示されているテキストビューを見つけることができません。どうすればこれを行うことができますか?

4

6 に答える 6

12

[textView.layer setBorderWidth:0.0f];

于 2014-09-29T10:42:37.907 に答える
12

これを使用すると、境界線のスタイルが説明どおりに変更されます。TextView と言いますが、textField のことですか? テキスト フィールドには、既定の灰色の丸い境界線を設定できます。削除するには、これを行います。

textField.borderStyle = UITextBorderStyleNone;

ここで、「textField」はテキストフィールドの名前です。

textField のプロパティに関する Apple のドキュメントへのこのリンクにアクセスすると、変更したいその他の点に役立つと確信しています。それがあなたが意図した TextView フィールドである場合、アップルのドキュメントはここでも使用するプロパティを提供します。

この助けを願っています、乾杯、ジム。

于 2013-10-19T11:32:08.963 に答える
1

私が考える最善の方法は、UITextView をサブクラス化し、drawRect メソッドをオーバーライドすることです。次に例を示します。

.h

#import <UIKit/UIKit.h>

@interface CustomTextView : UITextView

@end

.m

#import "CustomTextView.h"
#import <QuartzCore/QuartzCore.h>

@implementation CustomTextView

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
    }
    return self;
}

- (void)drawRect:(CGRect)rect
{
    // Drawing code

    self.backgroundColor = [UIColor whiteColor];
    self.layer.cornerRadius = 5;

    // plus info: you can add any border what you want

    self.layer.borderColor = [UIColor blueColor].CGColor;
    self.layer.borderWidth = 2.0;
}

@end

self.layer.... を使用したい場合は、プロジェクトに追加する必要があります:#import <QuartzCore/QuartzCore.h>フレームワーク

この方法では、任意のスタイルを作成できます。

于 2013-10-19T11:22:29.397 に答える
1

複数のテキスト ビューを操作するときは、この問題を思い出してください。私が思いつく最善の解決策はこれです:

MyTextView.h


@interface MyTextView : UITextView

@end

MyTextView.m



#import "MyTextView.h"

@implementation MyTextView

 - (void)drawRect:(CGRect)rect
{
    self.layer.borderWidth = 0.0f;
}

@end

于 2014-08-12T17:20:05.773 に答える