दृश्य दोनों एक फ्रेम (superview के समन्वय प्रणाली में निर्देशांक) गुना (खुद समन्वय प्रणाली में निर्देशांक) संपत्ति है, लेकिन अगर आप एक दृश्य को बदलने के लिए, आप का उपयोग करें या अब और फ्रेम संपत्ति पर भरोसा नहीं करना चाहिए। आप परिवर्तनों का उपयोग कर रहे हैं, तो सीमा के साथ, केवल संपत्ति, नहीं फ्रेम ठीक से काम कर के रूप में परिवर्तनों सीमा को लागू किए जाते हैं, लेकिन जरूरी नहीं कि फ्रेम मेंCGAffineTransform view.bounds बदलता है?
http://iphonedevelopment.blogspot.jp/2008/10/demystifying-cgaffinetransform.html
मैं चाहता था सही रूप में प्रतिबिंबित नहीं होते हैं यह देखने के लिए कि उपरोक्त अनुच्छेद में क्या मतलब है और मुद्रित 'फ्रेम' और 'सीमाएं'
और मुझे लगता है कि चुटकी के दौरान केवल 'फ्रेम' बदल रहा है।
- (IBAction)handlePinch:(UIPinchGestureRecognizer*)recognizer
{
NSLog(@"scale: %f, velocity: %f", recognizer.scale, recognizer.velocity);
NSLog(@"Before, frame: %@, bounds: %@", NSStringFromCGRect(recognizer.view.frame), NSStringFromCGRect(recognizer.view.bounds));
recognizer.view.transform = CGAffineTransformScale(recognizer.view.transform, recognizer.scale, recognizer.scale);
NSLog(@"After, frame: %@, bounds: %@", NSStringFromCGRect(recognizer.view.frame), NSStringFromCGRect(recognizer.view.bounds));
recognizer.scale = 1;
}
उत्पादन: (में zomming)
2012-07-02 14:53:51.458 GestureRec[1264:707] scale: 1.030111, velocity: 0.945660
2012-07-02 14:53:51.466 GestureRec[1264:707] Before, frame: {{0, 124}, {320, 160}}, bounds: {{0, 0}, {320, 160}}
2012-07-02 14:53:51.473 GestureRec[1264:707] After, frame: {{-4.81771, 121.591}, {329.635, 164.818}}, bounds: {{0, 0}, {320, 160}}
2012-07-02 14:53:51.480 GestureRec[1264:707] scale: 1.074539, velocity: 1.889658
2012-07-02 14:53:51.484 GestureRec[1264:707] Before, frame: {{-4.81771, 121.591}, {329.635, 164.818}}, bounds: {{0, 0}, {320, 160}}
2012-07-02 14:53:51.494 GestureRec[1264:707] After, frame: {{-17.103, 115.449}, {354.206, 177.103}}, bounds: {{0, 0}, {320, 160}}
2012-07-02 14:53:51.499 GestureRec[1264:707] scale: 1.000000, velocity: 1.889658
2012-07-02 14:53:51.506 GestureRec[1264:707] Before, frame: {{-17.103, 115.449}, {354.206, 177.103}}, bounds: {{0, 0}, {320, 160}}
2012-07-02 14:53:51.510 GestureRec[1264:707] After, frame: {{-17.103, 115.449}, {354.206, 177.103}}, bounds: {{0, 0}, {320, 160}}
मैं कुछ या लेखक गलतफहमी हूँ में ब्लॉग गलत क्या है?
क्या आप ट्रांसफॉर्म से पहले और बाद में दोनों मानों को लॉग कर सकते हैं, और उस पैमाने के मूल्य को भी लॉग कर सकते हैं जिसका आप उपयोग कर रहे हैं? और वास्तव में अपने प्रश्न में आउटपुट शामिल करें :) – jrturton
@jrturton: निश्चित, संपादित – eugene