問題タブ [catransformlayer]
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 - CALayer をクリック可能にするにはどうすればよいですか?
CATransformLayer を使用して一連のレイヤーを作成し、それらを 3D 視点でアニメーション化して立方体を作成しています (このようなもの)。
この立方体の側面の 1 つに UIButton を追加する最良の方法は何ですか? イベントを受け取り、IBOutlet からボタンにアクセスできるようにしたいと考えています。
XIB 内にボタンを含む UIView を作成し、そのレイヤーを CATransformLayer に挿入しようとしましたが、表示されますが、ボタンをクリックできません。これは、UIKit が Touch/events 側を処理するためであり、レイヤーは描画を行うためだけにあると感じています。
(ところで、私はこの質問を見ましたが、このケースは新しい投稿を正当化するのに十分異なると感じています)
catransform3d - CATransformLayerへのサブビューとしてのCALayersの結合と反転
以前のstackoverflowの提案に基づいて、CATransformLayerに追加されたCALayersを使用してトランプを作成しようとしています。アイデアは、前面と背面のCALayerを作成し、それらをCATransformLayerで結合して、適切な面が自動的に表示されるように回転、反転などできるようにすることです。以下は、前面が緑色で背面が赤色の単一のカードを作成しようとしているコードの例です。
赤い後ろはY軸を中心に反転し、緑の前とは反対側を向いています。緑のフロントキャレイヤーは、赤のバックよりも「高い」Z位置にあります。
ただし、変換を実行すると、カードが反転していない状態のように見えるだけです。私がここで間違っているアイデアはありますか?
ios - iOSで循環パス上のラベルをアニメーション化する方法は?
ビューで uiLabel をアニメーション化することに行き詰まっています。
実際には、ラベル/テキストを循環パスでアニメーション化したいだけです。私はインターネットでたくさん検索しましたが、私の問題のようなことをしている良いチュートリアルや例を見つけることができませんでした. CAShapeLayer (円) を 0 から最大値まで増やしました....
同様に、ラベル/テキストが円形パスの始点から移動を開始し、1 つの円を完了した後に始点に戻るようにしたいと考えています。
私の問題を非常に正確に説明したことを願っています...それでも、不足しているものや理解できないものがある場合. 私に聞いてください。
ありがとうございます。
iphone - CATransformLayer をそのスーパー レイヤに適切に配置する方法
UIView
画面全体にまたがる名前付きの containerView を作成しました。このビューCATransormLayer
では、次の寸法を持つ UIView を追加する必要があります。
両方の x 位置は、変数 positionX によって指定されます。DoubleSidedLayer
理論的には、との両方stripView
がオーバーラップする必要があります。しかし、そうではありません。
これがコードです。
ログ ステートメントから、doubleSidedLayer と stripView のフレームを確認できます。
しかし、両者は重なりません。これがスクリーンショットです。
注:横向きで作業しています。
ios - CATransformLayer タッチ イベントの処理
インターネットと Stackoverflow で検索しましたが、この特定の質問に対する回答が見つかりませんでした。これが私の質問です。
両側のタッチイベントに応答する両面を作成しようとしてUIView
います(UIButton、UISwitchなど)。に 2 つの異なる を追加することで、これを達成しましCALayer
たCATransformLayer
。すべて正常に動作しますが、インターフェイス ビルダーから追加された UI 要素にタッチが応答しません。問題を再現するためUIView
に、nib(frontView) で作成し、インターフェイス ビルダーからすべての ui 要素を追加し、そのUIView
参照を追加しCATransformLayer
ました。タッチ イベントに応答しないことを除いて、すべて正常に動作します。
私はそれを理解しているCALayer
か、のようなクラスCATransformLayer
から継承していません。そして、このレイヤーをレスポンダーチェーンに持ち込む方法があると思いますが、どうすればよいのでしょうか?. 以下は私の単純化された問題コードです。UIResponder
UIView
どんなサポートでも大歓迎です。前もって感謝します。
calayer - CATransformLayer と 3D 回転、ベネチアン ストアまたはアコーディオンのように、タイルを隣接させますか?
私は縦に並べられたタイルのセットを持っています。これらは、X 軸を中心に回転することを意図しています。アコーディオンを考えてみてください。各タイル n+1 が常にタイル n にぶら下がっているようにします。
最後の 2 つのスクリーン ショットのシアンのタイルは、黄色のタイルに接続する必要があります。そうではない。私はなぜなのか理解していない。さらに言えば、row0 を回転させると、次の 5 つのタイルがすべて回転されるのはなぜですか (これが私が望むことです)。 3番目と4番目のタイル。
参考までに、設定は次のとおりです。
現在、プレーンな CALayer のように 6 つのタイルを作成しています。
ここで、そのような各タイルを親 CATransformLayer にラップし、それを前の行のサブレイヤーとして追加します。これは、各 CATransformLayer がそのサブレイヤーに影響を与えるようにするためです。
この時点で、次のようになります。
そして、最後の行を次のように置き換えるまで、それを釘付けにしたと思いました:
そして、ここに私が得るものがあります:
代わりに、上記の行を次のように置き換えます。
私はこれを得る:
これに細心の注意を払いながら、 Appleのドキュメントを読んで再読しました:
アンカー ポイントが幾何学的操作に影響を与える
レイヤーのジオメトリ関連の操作は、そのレイヤーのアンカー ポイントに関連して発生します。これには、レイヤーの anchorPoint プロパティを使用してアクセスできます。アンカー ポイントの影響は、レイヤーの位置または変換プロパティを操作するときに最も顕著になります。position プロパティは常にレイヤーのアンカー ポイントを基準にして指定され、レイヤーに適用する変換もアンカー ポイントを基準にして行われます。
(私のものを強調)
私は今、完全に混乱していると言っても過言ではありません。誰でも私が間違っていることを確認/説明できますか?
タイルが常に上から下に隣接するようにこれらのレイヤーを配置するにはどうすればよいですか?
レイヤー階層のダンプは次のとおりです。
ios - CATransformLayer を 3D で PNG にレンダリング
複数の CAShapeLayers を含む CATransformLayer を png ファイルにレンダリングしようとしています。基本的なレンダリングを設定する方法を知っていて、うまくいきます。
ただし、CATransformLayer で renderInContext を呼び出すと、すべてが 2D にフラット化され、変換マトリックス (回転および/または視点) が完全に無視されます。
すべての CAShapeLayers を使用して 3d CATransformLayer を PNG / UIImage にレンダリングするにはどうすればよいですか?
objective-c - CATransform3DRotate のロジック
写真のようにビューを変換しようとしています:(top and sideView)
前に各ビューをビューに追加しました(view1はview3を追加するview2を追加します)。
view3 を view1 と同じ角度に戻す正しい方法を見つけるのに苦労しました。
これは私が試したものです:
このコードを使用すると、View3 は 45 度未満になりました。私の質問: 45 度の角度で from2 から view3 に切り替えるにはどうすればよいですか?