現在、UIScrollView と、その上にある半透明の上部と下部のバーがあります。UIScrollView には、パンおよびズーム可能な大きな UIImageView が含まれています。
画像を切り替えて、画像の特定の部分の周りのすべてを暗くしたいのですが、半透明の上部/下部バーと完全に透明メッシュを合わせたいです。コンテンツはスクロール/ズーム可能であるため、画像自体を暗くすると、その部分が上部/下部バーの下にあるときはいつでも二重に暗くなります.
このジレンマを解決するために、上部と下部のバーの間にネストされた小さな UIScrollView を作成し、ズーム/パン コマンドを送信してその下の UIScrollView をミラーリングしようとしましたが、うまくいきませんでした。アニメーションを同期しようとするのは悪夢でした (zoomDidScroll の zoomScale/contentOffset をコピーし、ズーム/パン アニメーションを各 UIScrollView に個別に送信し、KVO を使用するなど)。
個々のレイヤーごとに異なるフレーム サイズ/カットオフ ポイントを設定する方法はありますか? それとも、各 UIImageView サブビューでしょうか? 私は他の提案された解決策にもオープンです。これは本当に私を壁に追いやっています。助けてくれてありがとう。
トグル前の様子:
トグル後に欲しいもの: