मेरे पास शीर्षक स्ट्रिंग "DO: ये कार्य" के साथ एक UIActionSheet है। शीर्षक स्ट्रिंग में, सबस्ट्रिंग "डीओ:" बोल्ड होना चाहिए (एक विशेष फ़ॉन्ट आकार के साथ) और "इन कार्यों" को सबस्ट्रिंग नियमित होना चाहिए। क्या यह संभव है? मैं यह कैसे कर सकता हूँ?UIActionSheet शीर्षक स्ट्रिंग का फ़ॉन्ट प्रकार और आकार बदलें
उत्तर
मुझे लगता है कि आप एक वर्ग जो UIActionSheetDelegate
प्रोटोकॉल लागू करता है और अपने वर्ग, वर्तमान UIActionSheet
के एक प्रतिनिधि वर्ग है ताकि कक्षा में आप UIActionSheet
के पूरे शीर्षक की तरह बदल सकते हैं
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
for (UIView *_currentView in actionSheet.subviews) {
if ([_currentView isKindOfClass:[UILabel class]]) {
[((UILabel *)_currentView) setFont:[UIFont boldSystemFontOfSize:15.f]];
}
}
}
लेकिन जहां तक आप देखते हैं कि UILabel
ऑब्जेक्ट की text
संपत्ति के हिस्से को प्रारूपित करने का कोई मौका नहीं है।
आप भिन्न फ़ॉन्ट के साथ अब अपनी actionsheet
के लिए एक नया UILabel
जोड़ सकता है, अगर आप बोल्ड DO:
स्ट्रिंग के साथ एक पाठ देखना चाहते हैं ... लेकिन यहाँ से सीमा केवल आप कल्पना है, तो आप स्वरूपित कर सकते हैं इस विधि में UIActionSheet
के तत्व या -didPresentActionSheet:
विधि के अंदर भी।
तो यह विचार होगा।
अद्यतन यहाँ पर 7 2013
iOS7 में हम वास्तव में एकUIAlertView
या एकUIActionSheet
वस्तु की subviews के लिए सीधी पहुँच नहीं है, तो यह समाधान iOS7 पर्यावरण पर ठीक से काम नहीं किया जा सकता है ।
यदि आपको आईओएस 7 पर कोई समस्या है, तो कृपया मुझे टिप्पणी करें! धन्यवाद।
अद्यतन पर 22 जून 2014
मैं नए UIAlertController
iOS8 में साथ सीधे इस तरह बात करने के लिए कोई समाधान नहीं मिला है, शीर्षक लेबल, UIAlertController
के पूरे दृश्य-पदानुक्रम में दिखाई नहीं करने के लिए लग रहा है न इससे पहले या यहां तक कि दिखाई देने से पहले दिखाई देता है।
नोट: मैं भी समझ गए होंगे कि यह ओवरलैप/उसकी सामग्री को कवर, के बाद यह स्क्रीन पर दिखाई मना नहीं है। वर्तमान में भविष्यवाणी करना असंभव है कि यह बीटा पर काम करेगा या यह ऐपस्टोर-सुरक्षित है या नहीं।
नोट: आपके मन में दृश्य-जीवन चक्र के समय सहन कृपया, और अगर है कि नेविगेशन ढेर में पहले से ही नहीं है एक दृश्य या देखने controler में किसी भी सामग्री पेश करने के लिए कोशिश मत करो।
वैसे भी, यहां स्विफ्ट समाधान है कि मैं परतों तक कैसे पहुंच सकता हूं और मैं इसे अपना कस्टम व्यू जोड़ सकता हूं।
let alertController: UIAlertController = UIAlertController(title: "", message: "", preferredStyle: UIAlertControllerStyle.Alert)
self.presentViewController(alertController, animated: true, completion: {
let aboveBlurLayer: UIView = alertController.view.subviews[0] as UIView
let belowBlurLayer: UIView = (aboveBlurLayer.subviews[0].subviews as Array<AnyObject>)[0] as UIView
let customView: UIView = UIView(frame: aboveBlurLayer.bounds)
customView.backgroundColor = UIColor.redColor()
aboveBlurLayer.addSubview(customView)
})
नोट: यह एक चेतावनी/actionsheet करने के लिए कस्टम सामग्री जोड़ने के लिए उपयोगी हो सकता है, लेकिन अगर यह भविष्य में काम नहीं करता है, मैं अपने जवाब अद्यतन करेगा।
इन लिंक को देखें और इसका उपयोग करें। ohattributedlabel
http://www.cocoacontrols.com/platforms/ios/controls/ohattributedlabel
बिना मेरे लिए के रूप में अच्छी iOS7 पर काम किया। – holex
Holex के जवाब के आधार पर:
दोनों iOS7 और iOS6 निम्नलिखित मेरे लिए काम किया है UIActionSheet गुणों का शीर्षक बदलने के लिए के लिए। कृपया ध्यान दें कि वास्तव में अज्ञात के लिए, मैं वास्तव में एक नया सबव्यू जोड़ रहा हूं? वर्तमान UILabel को अद्यतन करने का कारण केवल पाठ का आधा हिस्सा देता है? इसके अलावा "शीर्षक" पहले UILabel की गारंटी है, इसलिए हम एक बदलाव के बाद लूप को तोड़ते हैं।
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
for (UIView *_currentView in actionSheet.subviews) {
if ([_currentView isKindOfClass:[UILabel class]]) {
UILabel *l = [[UILabel alloc] initWithFrame:_currentView.frame];
l.text = [(UILabel *)_currentView text];
[l setFont:[UIFont fontWithName:@"Arial-BoldMT" size:20]];
l.textColor = [UIColor darkGrayColor];
l.backgroundColor = [UIColor clearColor];
[l sizeToFit];
[l setCenter:CGPointMake(actionSheet.center.x, 25)];
[l setFrame:CGRectIntegral(l.frame)];
[actionSheet addSubview:l];
_currentView.hidden = YES;
break;
}
}
}
उपर्युक्त आईओएस 6 और आईओएस 7 सिमुलेटर पर काम करता प्रतीत होता है। मुझे यकीन नहीं है कि यह आईओएस के अन्य भविष्य के संस्करणों के साथ काम करेगा या नहीं।
यह आईओएस 8.3 पर काम नहीं कर रहा है। :) –
निम्नलिखित उपयोगी हो सकते हैं।
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet
{
[actionSheet.subviews enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
if ([obj isKindOfClass:[UIButton class]]) {
UIButton *button = (UIButton *)obj;
button.titleLabel.font = [UIFont systemFontOfSize:15];
}
}];
}
iOS 7 के लिए निम्नलिखित कोड काम करेंगे।
लागू UIActionSheetDelegate
रूप
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
[actionSheet.subviews enumerateObjectsUsingBlock:^(id _currentView, NSUInteger idx, BOOL *stop) {
if ([_currentView isKindOfClass:[UIButton class]]) {
[((UIButton *)_currentView).titleLabel setFont:[UIFont boldSystemFontOfSize:15.f]];
// OR
//[((UIButton *)_currentView).titleLabel setFont:[UIFont fontWithName:@"Exo2-SemiBold" size:17]];
}
}];
}
आईओएस 6 के लिए इस प्रकार
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
for (UIView *_currentView in actionSheet.subviews) {
if ([_currentView isKindOfClass:[UILabel class]]) {
[(UILabel *)_currentView setFont:[UIFont boldSystemFontOfSize:15.f]];
// OR
//[(UILabel *)_currentView setFont:[UIFont fontWithName:@"Exo2-SemiBold" size:17]];
}
}
}
किसी कारण से यह रद्द बटन के फ़ॉन्ट को नहीं बदलेगा :( – samvermette
उपरोक्त हे @ @ सेवरवेमेट का परीक्षण किया गया है और मेरे ऐप में से एक में उपयोग किया जाता है :) ठीक काम कर रहा था। अगर आपको कोई अन्य समाधान मिल जाए तो कृपया अपडेट करें। – icodebuster
@icodebuster आपका समाधान मेरे लिए आईओएस 7 पर अच्छा काम करता है, धन्यवाद। –
वहाँ UIActionSheet
का एक आंतरिक संपत्ति _titleLabel
कहा जाता है तो यह एक संदर्भ हो और जिम्मेदार ठहराया स्ट्रिंग संपत्ति को बदलने के लिए संभव है इस लेबल का सीधे।
कृपया ध्यान रखें कि यह एक निजी एपीआई ऐप स्टोर में खारिज कर दिया जा सकता है।
यह ऐसे काम करता है:
- (NSAttributedString *) actionSheetAttributedTitle;
{
NSMutableAttributedString *attString=[[NSMutableAttributedString alloc] initWithString:@"Test"];
UIFont *font=[UIFont fontWithName:@"Helvetica-Bold" size:13.0f];
[attString addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, attString.length)];
[attString addAttribute:NSForegroundColorAttributeName
value:[UIColor blackColor]
range:NSMakeRange(0, attString.length)];
return [attString copy];
}
- (void)willPresentActionSheet:(UIActionSheet *)actionSheet;
{
UILabel *sheetTitleLabel;
if([actionSheet respondsToSelector:@selector(_titleLabel)]) {
sheetTitleLabel = objc_msgSend(actionSheet, @selector(_titleLabel));
sheetTitleLabel.attributedText = [self actionSheetAttributedTitle];
}
}
- 1. UINavigationController शीर्षक का फ़ॉन्ट बदलें
- 2. टेक्स्ट फ़ॉन्ट का आकार बदलें
- 3. नेविगेशन बार शीर्षक फ़ॉन्ट का आकार
- 4. फ़ॉन्ट आकार और प्रकार CATextLayer
- 5. स्वत: आकार बदलें टेक्स्ट (फ़ॉन्ट आकार)?
- 6. जावा फ़ाइल से फ़ॉन्ट आकार और फ़ॉन्ट रंग कैसे बदलें?
- 7. शीर्षक ggplot2 में एक चर है जब प्लॉट शीर्षक के फ़ॉन्ट आकार को कैसे बदलें?
- 8. डिफ़ॉल्ट एक्शनबार शीर्षक फ़ॉन्ट आकार क्या है?
- 9. एएसपी.नेट चार्ट: चार्ट के शीर्षक में फ़ॉन्ट कैसे बदलें?
- 10. MFMailComposeViewController का शीर्षक बदलें
- 11. पावरहेल में "विंडोज फ़ॉन्ट आकार (डीपीआई)" बदलें?
- 12. एंड्रॉइड वेबव्यू में फ़ॉन्ट आकार कैसे बदलें?
- 13. पीडीएफपीटेबल में फ़ॉन्ट आकार कैसे बदलें?
- 14. डब्ल्यूपीएफ - रनटाइम पर वैश्विक फ़ॉन्ट आकार बदलें
- 15. jqGrid में फ़ॉन्ट आकार को कैसे बदलें?
- 16. एक HTML इनपुट टैग का फ़ॉन्ट और फ़ॉन्ट आकार कैसे बदलें?
- 17. UINavigationBar फ़ॉन्ट गुण बदलें?
- 18. फ़ॉन्ट परिवर्तन पर टिंकर टेक्स्ट विजेट का आकार कैसे बदलें?
- 19. एंड्रॉइड में टैबहोस्ट का फ़ॉन्ट आकार कैसे बदलें
- 20. jQuery बदलते फ़ॉन्ट परिवार और फ़ॉन्ट आकार
- 21. फ़ॉन्ट और फ़ॉन्ट आकार बदलने का सबसे आसान तरीका
- 22. समूहबद्ध प्रकार UITableView में शीर्षक के फ़ॉन्ट रंग को कैसे बदलें?
- 23. जावास्क्रिप्ट अलर्ट का शीर्षक बदलें
- 24. स्टाइल शीट्स के साथ QGroupBox शीर्षक फ़ॉन्ट आकार सेट करें
- 25. आईपैड पर स्प्रिंगबोर्ड में ऐप शीर्षक के लिए फ़ॉन्ट आकार
- 26. विंडो शीर्षक टेक्स्ट आकार
- 27. पेपरक्लिप आकार बदलें और
- 28. matplotlib: शीर्षक और रंगीन पाठ बदलें और रंगों को टिकटें
- 29. एचटीएमएल फ़ॉन्ट का आकार चुनें
- 30. MATLAB डिफ़ॉल्ट आकृति फ़ॉन्ट आकार
यह इस ** वास्तव में ** कोई 3 हिस्सा कोड की जरूरत है के लिए किसी भी मुद्दे –