0

私は Eclipse Framework で開発している Android プロジェクトに取り組んでいます。ここでは、Animation クラスを使用したのと同じように、画面上で長いテキストをスクロールしたいと考えています。

    TextView tt = new TextView (this);
    tt.setText("Welcome Here is my very long text to display.But only some part of text is getting displayed, not the entire text.Please provide me the solution so that entire text should be displayed on the screen");
    tt.setEllipsize(TextUtils.TruncateAt.valueOf("MARQUEE"));
    tt.setTextSize(40);
    tt.setSingleLine(true);

    //here actual_scr_width = device screen width
    //here actual_scr_height = device screen height

    if(direction.equalsIgnoreCase("left"))
    {
         Animation animationToLeft = new TranslateAnimation(actual_scr_width, -actual_scr_width, 0, 0);
         animationToLeft.setDuration(12000);
         animationToLeft.setRepeatMode(Animation.RESTART);
         animationToLeft.setRepeatCount(Animation.INFINITE);
         tt.setAnimation(animationToLeft);
    }
    else if(direction.equalsIgnoreCase("right"))
    {
         Animation animationToLeft = new TranslateAnimation(-actual_scr_width, actual_scr_width, 0, 0);
         animationToLeft.setDuration(12000);
         animationToLeft.setRepeatMode(Animation.RESTART);
         animationToLeft.setRepeatCount(Animation.INFINITE);
         tt.setAnimation(animationToRight);
    }

しかし問題は、マーキーとしてスクロールする長いテキストがある場合、テキスト全体ではなく、テキストの特定の部分のみが表示されることです。テキスト全体をマーキーとしてスクロールできるようにするための最適な解決策を教えてください。返信を待っています... よろしくお願いします。

4

2 に答える 2

0

あなたのコードでは、アニメーション部分を削除しても、同じマーキー機能として機能するようです。コード内のテキストボックスではなく、テキストだけをアニメーション化してみてください。

于 2014-07-15T10:56:33.847 に答える
0

上記の問題の解決策がありません。したがって、上記の問題を克服するために、別のアプローチを適用しました。皆さんの目的も解決できるように、これを皆さんと共有します。私がしたことは、Webview を使用し、loadurl メソッドを使用してその上に html ページをロードしたことです。

Webview wv = new Webview();
wv.loadurl("SampleMarquee.html");

HTML を使用すると、marrqee を簡単に実装できます。ここhtmlでは、テキストの長さに制限はありません。最後に、この Web ビューをメイン レイアウトに追加して、目的が達成されるようにします。

于 2013-04-05T17:06:00.290 に答える