2011-10-17 24 views

答えて

0

トランスフォームは使用できません。 UIViewのフレームを設定する方がよい。これは実際にビューの高さを変更するためです。

view.frame = CGRectMake(0,0,100,200);

+0

私はdrawRectまたはlayoutSubViewでUIViewを変更したかったので、view.frameを使いたくありません。 – Krishnan

+0

UIViewで何かを変更する必要はないかもしれません。適切な幅/高さで目的のコンテキストにビューを描画するだけです。 – WaiLam

+0

私はカスタムUIViewを持っています。デスティネーションの図面ビューを詳しく調べることはできますか? – Krishnan

3

何か:

view.transform = CGAffineTransformMakeScale(1.0, 2.0); 

はあなたのビューが2倍高いが、同じ幅になります。ただし、ラスタライズ後に変換が適用されるので、元のピクセルが引き伸ばされるだけで、余分な詳細はわかりません。また、UIViewのドキュメントから、変換がID以外のものに設定されている場合、frameは未定義になることに注意してください。

+0

Iこれをチェックしました。あなたが言ったように、それはピクセル化されました。これを避ける方法はありますか? – Krishnan

+0

私は完全には自信がありませんが、適切な縮尺でコンテキストを作成してから、関連するビューのイメージを高解像度で取得するために 'renderInContext:'を使用した場合は、そのレンダリングを行うことができます。 – Tommy

関連する問題