私はこのレイアウトを実現したいと思います:
多数の TextView を表示すると、ユーザーは水平方向にスクロールでき、リストは中央の項目にスナップします (これを取得できます)。
いくつかのオプションがあるようですが、どれも満足のいくものではありません。
最初に調査しましHorizontalScrollView
たが、スクロールのみを行い、スナップは行いません。
Gallery
getView
非推奨ですが、最も有望に見えます-アダプターでオーバーライドするだけです:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView tv = convertView == null ? new TextView(getActivity()) : (TextView) convertView;
tv.setText(getItem(position));
tv.measure(0, 0);
int width = tv.getMeasuredWidth();
tv.setLayoutParams(new Gallery.LayoutParams(width + 100, 100));
return tv;
}
利用可能な他のオプションは ですが、ViewPager
ViewPager は ViewPager 自体と同じ幅のビューを好むようです。
使用に問題はありますGallery
か?Google が同等の代替品を提供せずに View を廃止することはあまり好きではありませんが、Android の将来のバージョンでそれがなくなるのではないかと心配しています。