2011-09-12 17 views
3

Horizo​​ntalScrollViewがすでに値でスクロールされているときに表示する値を指定するにはどうすればよいですか?一部のscrollXでHorizo​​ntalScrollViewを開始

私は既にscrollToメソッドを試しましたが、ポストレイアウトContextでのみ機能します。特定の位置でHorizo​​ntalScrollViewを開始できません。

どうすればいいですか?

+0

誰かが何も言わずに投票するにはどうすればいいですか? –

+0

私も不思議です – njzk2

答えて

1

(一部onPostSomethingでは、私は推測する)、任意のより良い解決策も歓迎されています。それはするので

public void scrollWhenAvailable(final int x) { 
     if (x == getScrollX()) 
      return; 

     scrollTo(x, 0); 

     postDelayed(new Runnable() { 

      @Override 
      public void run() { 
       scrollWhenAvailable(x); 
      } 
     }, 10); 
    } 
+0

ソフト鳥は右です –

+0

いいえ、ソフトバードの答えは解決しません、停止downvoting –

+0

これはちょうど正しい答えは、それを投票を停止します。 –

0

スクロールを使用する必要があります。なぜなら、あなたが必要なものを正確に実行しているからです。適切なタイミングで呼び出す必要があるかもしれません。私はこの方法を解決し

+0

ありがとう、私は右onPostの何かを探すでしょう –

0

私はそれがpostDelayedにまでに、不要なであることを信じて、シンプルなポストで十分ですすべてのビューの次元が計算された後で実行される場合は、onCreate(..)でこれを追加することもできます。

scrollView.post(new Runnable() { 

    @Override 
    public void run() { 
     // TODO Auto-generated method stub 
     scrollView.setScrollX(x); 
    } 
}); 

また、SDKのレベルが十分高い場合には、setScrollXはおそらく使用したいものです。

+0

私は遅滞なく試しましたが、動作しません –

関連する問題