2011-04-15 46 views

回答

1

不需要自定义视图。你所要做的就是适当地配置文本视图的图层。下面是产生相当多,你要寻找的效果,假设你用浅灰色的背景视图有一个UITextView配方:

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. 
- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    self.textView.clipsToBounds = NO; 
    CALayer *layer = self.textView.layer; 
    layer.cornerRadius = 10.0; 
    layer.borderWidth = 0.5; 
    layer.borderColor = [[UIColor grayColor] CGColor]; 
    layer.shadowColor = [[UIColor whiteColor] CGColor]; 
    layer.shadowOffset = CGSizeMake(0.0, 1.0); 
    layer.shadowOpacity = 1.0; 
    layer.shadowRadius = 0.5; 
} 

我遇到了一些麻烦白色阴影来显示。 This SO question解释说您需要将clipsToBounds设置为NO才能使阴影生效。

下面是结果的图片。我已经展示了底角,以便您可以看到白色阴影。

enter image description here

编辑:我现在在这个问题的看法可能是看到,事实上,一个UIWebView。我认为可以在NSTextView中嵌入内嵌图像,但UITextView可能不是这种情况。无论如何,上面的配方应该和UIWebView一样适用于UITextView(或任何其他视图)。

2

我的猜测是一个自定义的表格单元格内UIWebView

但这只是一个猜测。它可以是完全自定义的视图,或现有视图的各种组合。

+0

是啊,但单元格高度可调整大小(风景|人像) – xpepermint 2011-04-15 15:52:13

+0

这不是太难改变细胞的高度每当方向变化。 – 2011-04-15 15:54:31

0

如果您有一个tableview有一个部分,一行,并且该行有一个视图(UILabel或UITTextField),该视图比屏幕上的可见区域大,那么将会像那样滚动。或者也许只是一个带有UILabel的UIScrollView。

1

您可以通过股票UITextView实现此目的;它是UIScrollView的子类,因此您可以将徽标图像视图添加为子视图。然后,使顶部空间的图像通过调整文本填充:

textView.contentInset = UIEdgeInsetsMake(80,0,0,0);