質問

私が作成しました UIImageView インターフェースの電球の助けを借りて。今、私はその中にラベルを入れたいと思います(そのサブビューとして)。コードでは、次のようなものを入力できます。 [myUIImageView addSubview:myUILabel]; しかし、私はIBの助けを借りてそれをすることができますか?の解決策を見つけました UIView, 、しかし、似たようなものを見つけることができません UIImageView.

役に立ちましたか?

解決

Appleにしか知られていない理由で、インターフェイスビルダーのuiimageviewにサブビューを追加することはできません!プログラムでsubviewを追加できると言っているのは正しいことですが、自動化マスクとサブビューの配置を設定するオーバーヘッドは、すべてコードで処理する必要があります。これは面倒です。

そのため、簡単な回避策があります。 NIBのuiimageViewのインスタンスをドラッグする代わりに、uiviewをドラッグして、クラスをUiview(cmd+4オプションのインスペクター)からUiimageViewに変更するだけです。デフォルトのImageViewインスタンスと新しいuiimageViewサブクラスインスタンスのNIBにある唯一の違いは、次のことです。NIB(CMD+1オプション)の新しいImageViewに画像を設定できないことです。だから、 -viewDidLoad 適切なViewControllerの方法は、UiiMageViewのこのアウトレットに画像を設定します。

そうすることで、インターフェイスビルダーの「Now UiimageView」インスタンスにサブビューを自由に追加できますが、これは非常に簡単です。

お役に立てれば 。 。 。

他のヒント

答えを追加したいです。

サブビューを追加することはできません UIImageView, 、組み込むことで同じ効果を得ることができます UIView 透明な(透明な色)背景を備えています。

次に、 UIImageview その前に。

だから UIView サブビューがあります UIImageview の背景です UIView.

それがアップルの意図だと思います。

これがスクリーンショットです:

enter image description here

これが結果です:

enter image description here

背景を明確な色として設定することを忘れないでください

enter image description here

誰かが実際に私にチュートリアルを指摘できれば、これを行う方法は素晴らしいことです。私はチェックされた方法でそれを何時間も費やしました。チェックされた答えは素晴らしい答えですが、動作中に背景画像をはっきりと見ることができないため、非常に直感的ではありません。私はそうするための適切な方法だと思います。

最新のXcode(4.5)には、必要なコントロールを親にドラッグアンドドロップするオプションがあります。

とても簡単です。同じもののスクリーンショットが添付されています。ラベル/テキストフィールドとボタンをuiimageviewにドラッグしましたenter image description here

このコードを使用してください:

UIImage *image = [UIImage imageNamed:@"background.png"];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
[self.view insertSubview:imageView atIndex:0];

(交換 画像付きのbackground.png) (交換 atindex:0 .indexルートにある場所で、画像とオフを挿入する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top