4

からいくつかのニュースアイテムを読み込んでいます。webserviceこれらをに追加したいと思いHorizontalScrollViewます。

iOSでは、ニュースアイテムをループしてから、サブビューとしてテキストラベルをに追加することで実現しますScrollView。私はAndroidで同様のことをしようとしていますが、正しく動作させることができないようです。私が何をしても、アイテムは互いに下にリストされています。

ビューを追加するための私のコードは次のとおりです。

public void setupViews(ArrayList<News> news)
{
    HorizontalScrollView scrollView = (HorizontalScrollView) getView().findViewById(R.id.horizontalScrollView);
    LinearLayout layout = (LinearLayout) getView().findViewById(R.id.linearLayout);

    for(int i = 0; i < news.size(); i ++)
    {
        News newsItem = news.get(i);
        TextView head = new TextView(this.getActivity());
        head.setText(newsItem.getHead());
        head.setId(100+i);
        layout.addView(head);
    }
}

XMLは次のようになります。

<HorizontalScrollView
        android:layout_width="fill_parent"
        android:layout_height="150dp"
        android:id="@+id/horizontalScrollView" android:layout_gravity="center"
        >
    <LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" android:id="@+id/linearLayout">
    </LinearLayout>
</HorizontalScrollView>

私がこれをフラグメント内で行っていることは注目に値するかもしれません。

4

1 に答える 1

4

単一の子レイアウトのみをScrollView

あなたの場合:

  • ahorizontal LinearLayoutを追加します (これを LinearLayout に追加して、向きを水平に設定しますandroid:orientation="horizontal")
  • 中に物を追加するhorizontal LinearLayout

そして物事は水平に正しい場所に落ちます:-)

于 2012-07-17T09:37:54.307 に答える