2009-01-10 17 views
10

ठीक है, मैं इसमें टेक्स्ट के साथ एक लेबल प्राप्त करने की कोशिश कर रहा हूं (पहले से ही स्पष्ट रूप से किया गया है), जो स्क्रीन पर स्क्रॉल करता है।आकार बदलने योग्य UILabel जो स्क्रीन पर स्क्रॉल करता है

लेबल में इनपुट पाठ UITextField और UIButton द्वारा किया जाता है। यह ठीक है।

लेकिन मैं यूआईएलएबल को टेक्स्ट इनपुट की मात्रा के अनुसार आकार बदलने का प्रयास कर रहा हूं, ताकि स्क्रीन पर बहुत सारे टेक्स्ट स्क्रॉल हो जाएं।

[lblMessage setText: txtEnter.text]; 

CABasicAnimation *scrollText; 

scrollText=[CABasicAnimation animationWithKeyPath:@"position.x"]; 
scrollText.duration = 3.0; 
scrollText.repeatCount = 10000; 
scrollText.autoreverses = NO; 
scrollText.fromValue = [NSNumber numberWithFloat:500]; 
scrollText.toValue = [NSNumber numberWithFloat:-120.0]; 

[[lblMessage layer] addAnimation:scrollText forKey:@"scrollTextKey"]; 

समस्या है, कभी कभी स्क्रीन के बीच में स्क्रॉल शुरू होता है, और कभी कभी से पहले यह पूरी तरह से acrosss चला गया है गायब हो जाती है:

इस कोड को स्क्रॉल लेबल के लिए इस समय मेरे पास है।

यह लेबल के आकार के कारण पाठ में भी कटौती करता है .. मुझे नहीं पता कि इसे कैसे बदला जाए।

अग्रिम धन्यवाद।

Dom

उत्तर

7

मेरा मानना ​​है कि the solution for this question को कुछ इसी तरह इस मामले के लिए काम करेगा।

आप UISCrollView में UILabel को एम्बेड कर सकते हैं, UIScrollView उस लेबल के अधिकतम आकार पर सेट है जिसे आप स्क्रीन पर एक बार में प्रदर्शित करना चाहते हैं। UIScrollView को इसके स्क्रॉल संकेतक को अपने शो का उपयोग करके बंद करना होगा होरिज़ोंटलस्क्रॉल इंडिकेटर और शो वर्टिकलस्क्रॉल इंडिकेटर गुण। पाठ का एक परिवर्तन पर, आप निम्न कर सकता है:

[lblMessage setText: txtEnter.text]; 
[lblMessage sizeToFit]; 
scrollView.contentSize = lblMessage.frame.size; 

फ्रेम के साथ, ऊपर से जुड़े सवाल में वर्णित के रूप पैनिंग एनीमेशन कोड के बाद अब तक UILabel के अधिकार होने के काफी आलोचना किया जाना है। यह टेक्स्ट को लेबल में निरंतर दर पर स्क्रॉल करने का कारण बनता है। यदि आप लेबल को शुरुआत में स्क्रॉल करना चाहते हैं, तो आप UIView setAnimationRepeatAutoreverses का उपयोग कर सकते हैं: और setAnimationRepeatCount: आपके एनीमेशन ब्लॉक की शुरुआत में विधियां।

2

लेबल का आकार बहुत अच्छा काम करता है!

अब, मैंने लेबल को स्क्रॉलव्यू में रखा है और मुझे यह दिखा रहा है .. लेकिन अब मुझे उसमें जोड़ने के लिए सटीक एनिमेशन के बारे में निश्चित नहीं है। मैंने आपके द्वारा दिए गए लिंक पर कुछ लोगों की कोशिश की, लेकिन वे काम नहीं कर रहे हैं।

संपादित करें: कभी नहीं, मुझे अब यह सब मिल गया है।

CGPointMake (x, x) मुझे सामग्री ऑफ़सेट के लिए आवश्यक है।

संबंधित मुद्दे