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

为您的目的使用视图寻呼机或选项卡视图。它们旨在保存其他视图,而图库用于每个视图的单个对象。

于 2013-07-17T11:34:18.633 回答
0

您不应该在 Gallery 中放置 listView。它不是为此而构建的,它是为处理一个静态视图而构建的。很可能是图像。除此之外,它已弃用 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 回答