2015-10-23 33 views

回答

4

沒有這是不可能的。當標籤比屏幕寬時,它會被截斷。把它放在水平的WKInterfaceGroup也沒有幫助。

Apple Watch上遠程代表水平滾動的唯一方法是使用基於頁面的界面。在那裏你可以在不同的WKInterfaceControllers之間水平滑動。

如果文字是你WKInterfaceLabel太長,你不希望擁有多個行,你可以自動滾動文本:

class InterfaceController: WKInterfaceController { 

    @IBOutlet var label: WKInterfaceLabel! 

    let fullText = "This is a long text that should scroll." 
    var scrolledText: String? 
    var timer: NSTimer? 

    override func awakeWithContext(context: AnyObject?) { 
     super.awakeWithContext(context) 

     scrolledText = fullText 
     timer = NSTimer.scheduledTimerWithTimeInterval(0.2, target: self, selector: Selector("timerDidFire:"), userInfo: nil, repeats: true) 
     label.setText(scrolledText) 
    } 

    override func didDeactivate() { 
     timer?.invalidate() 
    } 

    func timerDidFire(timer: NSTimer) { 
     if scrolledText!.characters.count > 1 { 
      scrolledText!.removeAtIndex(scrolledText!.startIndex) 
     } else { 
      scrolledText = fullText 
     } 
     label.setText(scrolledText) 

    } 
} 

雖然這感覺有點太像90ies我;-)

+0

太棒了。謝謝。 (注意:我已經在90年代老了)我會檢查性能命中.. –

+0

是否有OBjC相當於?謝謝 –

+0

酷一個......但當然這只是一個工作......我不會尋找其他方式來做同樣的事情。 –