2009-07-04 15 views
0

UIImageViewでマルチタッチイベントを処理するために使用するカスタムUIImageViewクラスがあります。ユーザーのタッチが始まると、UIImageViewのフレームを増やしたいが、UIImageのサイズは固定したままにしておきたい。iPhone - UIImageViewのサイズを大きくして画像サイズを固定する

私はUIImageViewのフレームを変更し、UIImageのdrawInRect:メソッドを呼び出して、UIImageのサイズを固定したままにしてみました。しかし、これは動作していません。

UIImageViewのためcontentModeがScaleAspectFitのように設定して、すぐに私はUIImageViewのフレームサイズを増やすと、UIImageのサイズも増加(およびdrawInRectに影響されないされて:)

誰かが私に教えてくださいすることができ私はこれをどのように達成できるのでしょうか?

ありがとうございました。私がやろうとしていますどのような詳細

を追加

は画像

  • のサイズと同じサイズで画面上にこの

    1. 場所UIImageViewですユーザは、タッチした任意の場所に画像を選択し、ユーザが画像をマルチタッチしているかのように編集する。

    画像ビューのサイズを大きくしてどこに触れても、画像サイズも大きくなります。希望があれば、より明確になります。

    おかげ

  • +0

    あなたが表示された画像に影響を与えずにUIImageViewのフレームを増やしたいのはなぜ? 実際には、イベントの処理方法に影響を与えたいと思っています。どんな具体的な効果を達成しようとしていますか?ユーザーが指をフレームの外に動かすと画像が強調表示されたままになりますか? –

    答えて

    0

    はよくそれを行うには他の方法があるかもしれませんが、私はUIImageViewは、ここで行うことを意図しているものやっていると思います。 画像で覆われていないビューの領域をどのように見せたいですか?透明ですか?ソリッドカラーをお持ちですか? なぜこれをやりたいですか?画像そのものよりも広い範囲からタッチイベントをキャプチャするのですか?

    これを行う必要がある理由がある場合は、新しい表示を作成します。透明な色に設定された背景を持つ単純なUIViewを作成し、それにUIImageViewを追加します。プレーンビューをサイズ変更したものにします。

    +0

    ありがとうございます。はい、広い範囲からタッチイベントをキャプチャしてイメージビューに適用したいので、イメージビューのタッチ可能な領域が実際よりもはるかに大きいと感じます。私は透明なbkgを持つUIViewの中にimageviewを置いてきましたが、私はuiviewのタッチのために画像ビューに適用される変換を取得できません。 – lostInTransit

    +0

    bkgを0.1の不透明度に設定しようとすると、0アルファの場合はタッチイベントを登録しないと思います。 –

    +0

    @Steve:いいえ、アルファの0はうまくいきます - userInteractionEnabledがYESに設定されていることを確認するだけです – philsquared

    0

    私はこれを具体的に試していないが、私はそれが仕事だと思う:

    imageView.contentMode = UIViewContentModeCenter; 
    
    関連する問題