0

私はプログラムでUIImage別のものを追加することになっている上に. 画像は正常に追加されましたが、ラベルと重なっています。UIImageUILabel

If 1. BG 画像 2. プログラムで追加する画像 3. ラベル、

次に、必要なシーケンスは 1 2 3 です

そして私が得るのは

1 3 2

2 が私のラベルと重なっています。Send to Back、Bring to Front、およびbringSubviewToFront. それは動かなかった。

4

6 に答える 6

1
UIImageView *img2=[[UIImageView alloc] initWithImage: [UIImage imageNamed: @"TDK 3 Speaker.png"]];
//img2.backgroundColor=[UIColor clearColor];
[BgImage addSubview:img2];
UILabel *lblText=[[UILabel alloc]initWithFrame:CGRectMake(200, 0, 200, 40)];
lblText.text=@"I am Here";
//lblText.backgroundColor=[UIColor clearColor];
[BgImage addSubview:lblText];
于 2012-09-20T05:36:44.620 に答える
0

ここでは、追加の順序が重要です。後者が前に表示されます。サブビューの追加は、最初にBGImage、Image、Labelの順に呼び出す必要があります。

于 2012-09-20T05:12:56.417 に答える
0

BG Image (1) を表示したい場合は、UIView代わりに を使用UIImageViewすることもできます。 同じことを行うこともできUIImageViewます。

[yourUIView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"yourBackGroundImage"]]];

[yourUIView setFrame:CGRect(x,y,width,height)]; //yourExpectedFrame;

ここで、UIImageView(2) を作成し、その中に をUIImage設定し、 (3)も作成してに従って、 で指定します。それで全部です。あなたがやった!.frameUIViewUILabelframeUIViewUIImageView

于 2012-09-20T05:15:21.923 に答える
0

あなたがすべきことは、そのシーケンス自体に特定の画像を追加することです。つまり、ViewWillAppear または ViewDidLoad メソッドでメソッドを使用します self.view addSubview:BGimage。次に、のように前の画像に次の画像を追加し BGimage addSubview:image2ます。同様に、イメージ 2 に UILabel を追加します。 Image2 addSubview:Label

これにより、画像とラベルが特定の順序で配置されます:)

于 2012-09-20T04:53:44.947 に答える
0

よくわかりませんが、これを試してください:

プロパティ maskToBounds: YES を UIImageView に設定します。

于 2012-09-20T06:52:38.577 に答える
0

これを試して、QuartzCore.frameworkをヘッダーファイルに追加してください

#import <QuartzCore/QuartzCore.h>

そしてあなたの実装ファイルで

your_Label.layer.zPosition=your_secondImage.layer.zPosition+1;
于 2012-09-20T04:57:06.120 に答える