2010-11-23 52 views
3

我想添加一個背景圖像到UITextView。圖像只是一個小的邊框,將放置在文本視圖的頂部。 (該圖像類似於撕紙圖像)。我正在使用以下代碼iphone - uitextview的背景圖像問題

UIImageView *imgView = [[UIImageView alloc]initWithFrame: CGRectMake(0, 0, 320, 13)]; 
    imgView.image = [UIImage imageNamed: @"teared_paper.png"]; 
    [tView addSubview: imgView]; 
    [tView sendSubviewToBack: imgView]; 
    [imgView release]; 

我的文本視圖的高度僅爲150像素。 (文本視圖只佔用視圖的一小部分,它位於視圖的頂部,因此當鍵盤出現時用戶會看到它)

問題是,當我添加更多文本行時,文本視圖自動滾動。同時,我添加的背景圖片也在滾動。無論滾動如何,我都可以防止背景圖像始終保持最佳狀態。

+0

你可以做到這一點,但你必須注意,當你將滾動TextView - 你的背景也將滾動。所以batter的方式是將imageView放在textView後面並設置[textView setBackgroundColor:[UIColor clearColor]]; – Nazir 2013-04-07 06:23:39

回答

2

不要將圖像視圖添加爲文本視圖的子視圖。取而代之的是,有兩個圖像視圖和文本視圖作爲主視圖的孩子,文中觀點背後的圖像視圖位置和文本視圖的背景顏色設置爲透明的:

[tView setBackgroundColor:[UIColor clearColor]]; 
+2

你一定是在開玩笑。這是實現這一目標的唯一方法嗎?那太令人震驚了! – 2012-11-24 21:30:05

1

你可以嘗試把UIImageView放在UITextView後面並使UITextView透明嗎?

1

與試用:

UIImageView *imgView = [[UIImageView alloc]initWithFrame: CGRectMake(0, 0, 320, 13)]; 
imgView.image = [UIImage imageNamed: @"teared_paper.png"]; 
[tView addSubview: imgView]; 
[imgView release]; 

只是要TextView的透明:

[textView setBackgroundColor:[UIColor clearColor]]; 

沒有必要將子視圖前面。

希望這適用於你..