दिलचस्प पोस्ट
एक्सेल वर्कबुक खोलने के लिए वाइल्डकार्ड का उपयोग करना दृश्य स्टूडियो में निर्माण करते समय सशर्त 32/64 बिट संदर्भ का उपयोग करें क्षैतिज UITableView मुझे कैसे पता है कि सहायताMapFragment का उपयोग करते समय मानचित्र का उपयोग करने के लिए तैयार है? पेड़ पदानुक्रम प्राप्त करने के लिए सीटीई पुनरावर्ती स्कला में नियमित अभिव्यक्ति का उपयोग करके पैटर्न कैसे मिलान करें? अक्षांश और देशांतर निर्देशांक का उपयोग करके स्थान से समय क्षेत्र कैसे प्राप्त करें? MySQL – सहयोग एंड्रॉइड में HTTP क्लाइंट का उपयोग करते हुए JSON में पोस्ट अनुरोध कैसे भेजें? Android में गतिविधियों के बीच तार पास करना JavaFX 2.2 में एक कुरकुरा, अपारदर्शी हेयरलाइन कैसे आकर्षित करें? PHP से HTML ईमेल भेजा जा रहा है PHP कोड के भीतर से एक MySQL संग्रहीत प्रक्रिया को कैसे कॉल करें? त्रुटि: अनचाहे सिंटाक्स त्रुटि: अनपेक्षित टोकन < नाम XAML में नेमस्पेस त्रुटि में मौजूद नहीं है

उद्देश्य सी: आप UIButton और UILabel के लिए पाठ को कैसे घुमा सकते हैं?

आप UIButton और UILabel लिए पाठ को कैसे घुमा सकते हैं? 90 डिग्री, 180 डिग्री

धन्यवाद

वेब के समाधान से एकत्रित समाधान "उद्देश्य सी: आप UIButton और UILabel के लिए पाठ को कैसे घुमा सकते हैं?"

 [*yourlabelname* setTransform:CGAffineTransformMakeRotation(-M_PI / 2)]; 

घुमाए गए चित्र यहां छवि विवरण दर्ज करें

अस्पष्ट छवि यहां छवि विवरण दर्ज करें

इसे इस्तेमाल करे:

 lbl.transform= CGAffineTransformMakeRotation(DEGREES_TO_RADIANS(270)); 

मुझे पता है कि इस प्रश्न के पहले से बहुत सारे उत्तर हैं, लेकिन मैं एक वैकल्पिक प्रतिक्रिया प्रदान करना चाहता था।

UILabel को घूर्णन करने के बजाय, आप लेबल के अंदर UILabel और ओवरराइड drawRect से एक उपवर्ग बनाकर टेक्स्ट को घुमा सकते हैं। यदि आप इंटरफ़ेस बिल्डर का उपयोग कर रहे हैं, तो आप पहचान निरीक्षक की कस्टम क्लास विशेषता में UILabel बजाय यह उपवर्ग निर्दिष्ट कर सकते हैं। यह आपको प्रोग्राम को लैबिल बनाने के बजाय XIB के साथ अपना यूआई तैयार करने की अनुमति देगा। केवल चेतावनी है कि इंटरफ़ेस बिल्डर में टेक्स्ट क्षैतिज रूप से प्रदर्शित होगा। हालांकि, यह अनुप्रयोग में ही लंबवत रूप से प्रस्तुत किया जाएगा।

 #import "RotatedLabel.h" @implementation RotatedLabel - (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSaveGState(context); CGContextRotateCTM(context, -(M_PI/2)); UIFont* systemFont17 = [UIFont systemFontOfSize:17.0]; CGSize textSize = [self.text sizeWithFont:systemFont17]; CGFloat middle = (self.bounds.size.width - textSize.height) / 2; [self.text drawAtPoint:CGPointMake(-self.bounds.size.height, middle) withFont:systemFont17]; CGContextRestoreGState(context); } @end 

आप ऐसा करते हैं,

 UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 50, 70)]; label.numberOfLines = 2; label.text = @"text"; label.backgroundColor = [UIColor clearColor]; label.textColor = [UIColor whiteColor]; label.highlightedTextColor = [UIColor blackColor]; label.textAlignment = UITextAlignmentLeft; label.font = [UIFont systemFontOfSize:12]; //rotate label in 45 degrees label.transform = CGAffineTransformMakeRotation( M_PI/4 ); [self addSubview:label]; [label release]; 

मेरे अनुभव में, रूपांतरण के लागू होने के बाद UIView फ़्रेम को बदल दिया गया है, इसलिए यह मैंने जो प्रयोग किया है:

  UILabel *l = [[UILabel alloc] initWithFrame:CGRectMake(x, 0, 28, 159)]; l.textAlignment = NSTextAlignmentRight; l.text = @"Hello!"; [_viewXAxisLabels addSubview:l]; [l setTransform:CGAffineTransformMakeRotation(-M_PI / 2)]; l.frame = CGRectMake(x, 0, 28, 159); 
 lbl.transform=CGAffineTransformMakeRotation(M_PI); //Go back lbl.transform=CGAffineTransformMakeRotation(0); 
 //Right To Left lable.transform = CGAffineTransformMakeRotation (3.14/2); //Left To Right [lable setTransform:CGAffineTransformMakeRotation(-M_PI / 2)]; 

या

 lable.transform= CGAffineTransformMakeRotation(DEGREES_TO_RADIANS(270));