2011-03-12 50 views
0

在從右到左的長動畫移動字符串中,我想實際獲得可見子串。是否有可能在動畫過程中得到它?如何從長動畫移動字符串獲取當前可見子串

我必須保持旗幟的兩個特點:

  1. 平穩移動
  2. GET子(幾個字符)在某些時候,屏幕

這是一個線長串上。

我用這個動畫:

[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:10.0]; 
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; 

... 

[UIView commitAnimations]; 

我嘗試:

CGPoint currentPosition = [[self.autoScrollText.layer表示層]位置]。

,但沒有成功......

+0

你想控制文字的位置,相對於橫幅 - 這是一個UIView,哪個在移動? – iPadDeveloper2011 2011-03-13 00:48:47

+0

@ iPadDeveloper2011橫幅是UITextView,它是ScrollView的子視圖 – escape321 2011-03-13 16:23:34

+0

@ escape321。好的,所以你不想移動你的文字,相對於橫幅,你只是想改變橫幅中的文字?例如:「...」 - >「lo ...」 - >「ello ...」 - >「hello ...」? – iPadDeveloper2011 2011-03-14 00:09:13

回答

0

如果您的文本是在標準寬字體,如快遞,你可以通過你的相關的UITextView的位置,你的字符的寬度,和的LHS和RHS做到這一點你的視口。

+0

最初是Currier,當我從左到右移動frame.x時,一切都很簡單......我擁有絕對控制權和任何我想要的子字符串......但字體很醜,並且逐像素移動不是所以,現在我有動畫和Helvetica字體...對我的情況有任何希望嗎? – escape321 2011-03-20 22:07:32

0

另一種可能性是使用啓發式。我猜你正在做一些不同的事情(i),這取決於用戶點擊一個按鈕時哪個字符串是「可見的」。正是這些東西最終取決於文本字符串的來源(x位置)。不要以編程方式完成此工作,請自行完成(通過觀察/試驗和錯誤)並根據您確定的x的範圍在i不同選項之間進行選擇。

+0

我猜[這是SO問題/答案](http://stackoverflow.com/questions/1324379/how-to-calculate-the-width-of-a-text-string-of-a-specific-font-and - 字體大小)也可能有幫助。 – iPadDeveloper2011 2011-03-24 04:24:55