HorizontalScrollViewで、画像を初期表示で右寄せに表示する方法

2,085 views
Skip to first unread message

skmt

unread,
Jun 2, 2011, 6:47:03 AM6/2/11
to 日本Androidの会
初めての投稿をさせて頂きます。

Androidの開発を行っているのですが、HorizontalScrollViewを使用し、1画面内に収まらない画像ファイルをスクロールを使用
して表示させようとしているのですが、
デフォルトの状態では、左寄せ:右スクロール可能の状態となっています。
これを、右寄せ:左スクロール可能な状態で初期表示させたいのですが、なにか良い方法は有りませんでしょうか?

onCreate内で、fullScrollを使用して動的に右に寄せる方法は試してみたのですが、onCreate内では何故か上手く働きませんでし
た。。。

皆様のお知恵を貸して下さい。

宜しくお願い致します。

adachi

unread,
Jun 2, 2011, 9:54:27 PM6/2/11
to 日本Androidの会
こんにちは、skmtさん


adachiと申します。


HorizontalScrollViewクラスに、以下のメソッドがあるようです。

public void fling (int velocityX)

Android Developers
http://developer.android.com/intl/ja/reference/android/widget/HorizontalScrollView.html

説明を見ると、X方向への初期の速度と言う内容になっているので、
スクロールの位置の設定を行うメソッドであると思われるので、
これを使えば、目的が達成できそうな気がします。
ScrollViewにも同じメソッドが存在し、引数にY成分を取るようなので、
位置を設定する為のものだと考えられます。
(実際に試していないので、的が外れているかもしれません)

取り急ぎ、参考になりそうな資料を掲示しました。

skmt

unread,
Jun 3, 2011, 6:58:15 AM6/3/11
to 日本Androidの会
adachi 様

御返信ありがとうございます。

教えて頂いたメソッドを元に、onCreate上でメソッドを導入してみたのですが、
やはり状況は変わらずでした。

動きをみる限り、どうやらVIewの生成とスクロールの実行の順序が
スクロールの実行の方が先に来ているみたいです。。。

wait()等を使用する手も考えたのですが、やはりちょっと見栄えは良くならないですよね。。。



On 6月3日, 午前10:54, adachi <ko...@hotmail.co.jp> wrote:
> こんにちは、skmtさん
>
> adachiと申します。
>
> HorizontalScrollViewクラスに、以下のメソッドがあるようです。
>
> public void fling (int velocityX)
>
> Android Developershttp://developer.android.com/intl/ja/reference/android/widget/Horizon...
>
> 説明を見ると、X方向への初期の速度と言う内容になっているので、
> スクロールの位置の設定を行うメソッドであると思われるので、
> これを使えば、目的が達成できそうな気がします。
> ScrollViewにも同じメソッドが存在し、引数にY成分を取るようなので、
> 位置を設定する為のものだと考えられます。
> (実際に試していないので、的が外れているかもしれません)
>
> 取り急ぎ、参考になりそうな資料を掲示しました。
>
> On 6月2日, 午後7:47, skmt <h.s...@jast.co.jp> wrote:
>
>
>
> > 初めての投稿をさせて頂きます。
>
> > Androidの開発を行っているのですが、HorizontalScrollViewを使用し、1画面内に収まらない画像ファイルをスクロールを使用
> > して表示させようとしているのですが、
> > デフォルトの状態では、左寄せ:右スクロール可能の状態となっています。
> > これを、右寄せ:左スクロール可能な状態で初期表示させたいのですが、なにか良い方法は有りませんでしょうか?
>
> > onCreate内で、fullScrollを使用して動的に右に寄せる方法は試してみたのですが、onCreate内では何故か上手く働きませんでし
> > た。。。
>
> > 皆様のお知恵を貸して下さい。
>
> > 宜しくお願い致します。- 引用テキストを表示しない -
>
> - 引用テキストを表示 -

yuka2py

unread,
Jun 3, 2011, 8:08:16 AM6/3/11
to android-g...@googlegroups.com

ゆぅかです。こんばんわ。

ご質問の内容に直接の回答が出来なくて恐縮ですが、
onWindowFocusChanged 内で試されては如何でしょうか?
ここではレイアウトの構成は完了しています。
onWindowForcusChangedだと何度も呼ばれちゃいますが、
フラグなどを立てて、onCreate の後のみ実行させるようにできます。

外していたらすみません。

-- ゆぅか。

2011/06/03 20:01 "skmt" <h.s...@jast.co.jp>:

morimotokai

unread,
Jun 3, 2011, 10:36:13 AM6/3/11
to 日本Androidの会
守本と申します。

hzview.post(new Runnable() {
@Override
public void run() {
hzview.fullScroll(HorizontalScrollView.FOCUS_RIGHT);
}
});

私はこのようにしているのですが……どうでしょう?

skmt

unread,
Jun 6, 2011, 12:27:43 AM6/6/11
to 日本Androidの会
ゆぅか 様
守本 様

御返信ありがとうございました!
お二方から教えて頂いたどちらの方法でも、画像を右寄せに表示する事が出来ました!

本当に助かりました。
ありがとうございました!



On 6月2日, 午後7:47, skmt <h.s...@jast.co.jp> wrote:
Reply all
Reply to author
Forward
0 new messages