0

私はギャラリーを取り、画像を添付しながらxmlでリストビューを取ります。

ListView と画像が表示されます。しかし、リストビューをスワイプできません。

前もって感謝します。

    public class MainActivity extends Activity {
        Gallery gallery = null;
        Activity appContext = this;
        int[] images = { R.drawable.banana, R.drawable.apple, R.drawable.pineapple,
                R.drawable.lemon, R.drawable.mango };

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            gallery = (Gallery) findViewById(R.id.gallery);

            GalleryAdapter ga = new GalleryAdapter();
            gallery.setAdapter(ga);
        }

        class GalleryAdapter extends BaseAdapter {

            @Override
            public int getCount() {
                return 2;
            }

            @Override
            public Object getItem(int arg0) {
                return null;
            }

            @Override
            public long getItemId(int arg0) {
                return 0;
            }

            @Override
            public View getView(int pos, View v, ViewGroup parent) {
                v = LayoutInflater.from(appContext).inflate(R.layout.test1, null);

                ImageView iv = (ImageView) v.findViewById(R.id.imageView1);
                ListView lv = (ListView) v.findViewById(R.id.listView);

ここで、ListViewの画像を設定するアダプターを添付しています

ListAdapter la = new ListAdapter(appContext, images);
                    lv.setAdapter(la);

                    return v;
                }

            }
        }

ListAdapter の他の getView メソッドは

@Override
    public View getView(int pos, View v, ViewGroup parent) {
        v = LayoutInflater.from(appContext).inflate(R.layout.list_style, null);
        ImageView iv = (ImageView) v.findViewById(R.id.iv_listStyle);
        iv.setImageResource(images[pos]);
        return v;
    }
4

2 に答える 2

0

目的に合わせてビューページャーまたはタブビューを使用してください。これらは他のビューを保持するように設計されていますが、ギャラリーはビューごとに 1 つのオブジェクト用です。

于 2013-07-17T11:34:18.633 に答える
0

ギャラリーに listView を配置しないでください。そのためのビルドではなく、1 つの静的ビューを処理するためのビルドです。おそらくイメージです。それに加えて、非推奨の sinc v16 です: http://developer.android.com/reference/android/widget/Gallery.html

その他の可能性としては、Horizo​​ntalScrollView または ViewPager があります。

ほとんどの場合、ViewPager を使用する必要があります。サポート ライブラリにパッケージ化されているため、Android 1.6 から利用できます。

http://developer.android.com/tools/extras/support-library.html

質問に答えるには: ギャラリー ビューは、すべてのスワイプ (水平および垂直) をインターセプトします。そのため、ListView はスクロールしません。ViewPager が水平方向のスワイプのみをインターセプトする場合、ViewPager では ListView が機能します。

例については、こちらをご覧ください: http://developer.android.com/training/animation/screen-slide.html

于 2013-07-17T11:28:14.553 に答える