問題タブ [cgaffinetransformscale]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - UIView CGAffineTransform スケールの問題 (自動レイアウトの問題?)
0 にスケーリングして imageViewにシンプルを適用しようとしていますCGAffineTransform
が、何らかの理由で、アニメーションが開始する直前に imageView のフレームが台無しになっています。縮小されたビューに自動レイアウトが適用されているように見えます。私はそれをまったく望んでいません。ビューを「相対的に」元の場所に残し、視覚的に中心に縮小したいのですが、ビューが含まれているビューの上部と右側に関連付けられているため、移動しています。
私が望むのは、それがその中心に縮小して消えることですが、開始する直前に、imageView のフレームがコンテナーの右上にジャンプしています (iOS がアニメーションの後にそのサイズを計算し、アニメーションが開始する前に再配置します)。そこにジャンプした後、アニメーションはそれ自体に対して適切に機能し、ビューはその中心に対して縮小しますが、そもそも動かないようにしたいです。
これはすべてUITableViewCell
autolayout によって管理される 内で行われているため、これは autolayout と関係があると推測しており、<understatement>
autolayout が私の邪魔になったのはこれが初めてではありません</understatement>
。
自動レイアウトが変換に影響を与えないようにする方法はありますか?
ios - CGAffineTransformScale がゼロ スケールで機能しない
iOS 8 にアップデートして、興味深いことに気付きました。私は CGAffineTransformScale を使用して画像ビューをゼロにスケーリングします。これは、ユーザーのビューからきれいに消えるという考えです。iOS8までは動作しますが、今はまったく動作しません。すぐにビューはなくなります。空欄!
だからもともと私は使用しました:
これまで機能していた機能が減価償却されていないのに、これが機能しないのはなぜですか?
ios8 - CGAffineTransformMakeTranslation と CGAffineTransformScale 変換が ios7 と ios8 で異なる
ビューコントローラーに UITableView があり、ビューコントローラーの中央でズームアウトしたい。次のコードのように ios7 で正常に動作します。
ios8 にアップデートした後、コードは次のように正常に動作する可能性がありますが、ios7 では動作しませんでした:
誰が理由を説明できますか? 同じコードで正常に動作するにはどうすればよいですか?
uiview - ボタンのタッチ サイズは CGAffineTransformScale で変わりますか?
私の目標は、ボタンのビューを作成し、画面のサイズに合わせて拡大して、すべてのデバイスで動作し、画面の幅の 90% を占めるようにすることでした。古いプログラムであるため、制約を使用していません。現在、制約をオンにするのは大変な仕事です。私はこれを回避する方法を「ごまかす」ことを望んでいました。だから、私はこれを試しました:
基本的に標準の「ビュー」アイテムであるフルスクリーンビュー(インターフェイスビルダーで作成)内に作成された小さなビューがあります。その小さなビューの中には、「キーボード」を構成する UIButtons がたくさんあります。
小さいビューをスケーリングし (ボタンも視覚的にスケーリングします)、サイズが変化してもボタンが適切に応答するようにしたいと思います。だから私はこれをしました:
セットアップ: そのビュー内に UIButtons を含むビュー (buttonView)。ビューとボタンは、必要に応じて (Interface Builder で) IBOutlets と IBActions にアタッチされます。次のコードは、画面に合わせてビューをスケーリングします。
これは実際には視覚的には問題なく機能し、予想どおり、「keyboardCard」のサイズが大きくなり、内部のボタンも (視覚的に) 大きくなります。デバイスごとに変更すると、見栄えがよくなります。
ただし、一部のボタンが反応しなくなる場合があります。特に中央付近で問題なく動作し続けるものもあれば、停止するものもあります。タッチ障害はすべてのエッジで始まり、サイズが大きくなるにつれて内側に向かって進みます。ボタンがエッジで機能しないようにする「マスク」があるかのようです。
質問は次のとおりです。これはこれを行うための正当な方法ですか? どこにも文書化されていないようです。そうでない場合、ボタンを使用してビューを拡大および縮小し、ボタンが期待どおりに機能するようにする方法として何を提案しますか?
それとも、「キーボード」の小、中、大のビューを作成し、画面サイズに基づいて最も近いビューを選択する方がよいでしょうか?
提案とコメントをお願いします。ありがとうございました。
objective-c - UIView のアニメーションと変換により、奇妙な位置オフセットが発生する
http://childhoodgamedev.qiniudn.com/xincheng_testGif.gif
UILabel
という名前のインスタンスがありlabel
、 によって 2 倍にスケーリングされCGAffineTransformScale
ます。次に右から左に移動し、アニメーションが完了すると左から右に移動します。
しかし、奇妙な点は、アニメーションの終了点(右から左)、アニメーションの開始点(左から右)である同じ位置に見えないことです。しかし、NSLog は、それらが同じ位置にあることを示しています。
http://childhoodgamedev.qiniudn.com/xincheng_QQ20150306-1.png
state にコメントするとlabel.transform = CGAffineTransformScale(transform, 2, 2);
、すべて問題ありません。ラベルの移動方向が変わると、右→左アニメーションの終了位置が左→右アニメーションの開始位置になります。
したがって、問題の原因はCGAffineTransformScale
. 何か案は?
ios - CGAffineTransform を使用してビューに比例しないスケーリングと回転を適用した後の歪み
したがって、スケーリングと回転をビューに適用する必要があります。比例した「x」/「y」スケールを実行してから「回転」ビューを実行すると、すべて正常に見えますが、比例しない「x」、「y」スケールと回転を適用すると、歪んだ 例が表示されます
変換を実行するには、CGAffineTransformRotate、CGAffineTransformScale を使用します。
歪みのないスケーリングされた(プロポーショナルではない)ビューに回転を適用する方法がわかりません。
ios - UIButton アニメーションのスケーリング - Swift
クリックしたときのアニメーションをスケールしようとしていUIButton
ますが、達成しようとしているのは、ボタンがクリックされたときUIButton
に内側に小さくする必要があり、同じサイズに戻ります(バブルのように)。
私は次のことを試しました: