【问题标题】:Most efficient way of creating XML array of ImageView创建 ImageView 的 XML 数组的最有效方法
【发布时间】:2014-07-19 10:01:34
【问题描述】:

我是 android 编程新手,想知道最好的方法是创建一个 ImageViews 数组,而不是只制作 imageview1、imageview2、imageview3 等。我也希望你们建议的方式可以让他们有机会放置它们在一个布局中。

【问题讨论】:

  • 您是在寻找 ListView 还是 GridView?如果没有,那么您无法在 XML 中执行任何操作来创建 ImageView 数组。但是,在您的代码中,您可以迭代其父视图的子视图。
  • 请详细说明您的评论的第二部分?
  • 假设您在 LinearLayout 中有许多 ImageView,那么在您的代码中,您可以获得对该 LinearLayout 的引用并在 layout.getChildCount() 上执行 for 循环,然后根据需要将它们视为数组。

标签: android arrays xml layout imageview


【解决方案1】:

此示例代码假定您有图像:image1.jpg、image2.jpg 和 image3.jpg 在您的项目drawables文件夹中。图片的格式可以不同

  1. 创建图像数组

    private int[] images = {R.drawable.image1, R.drawable.image2, R.drawable.image3, R.drawable.image4};

  2. 设置一个 BaseAdapter

    类 ImagesAdapter 扩展 BaseAdapter {
        int[] 图像;
    
    public ProductList(int[] images) {
        this.images = images;
    }
    
    @Override
    public int getCount() {
        return images.length();
    }
    
    @Override
    public Object getItem(int position) {
        return images[position];
    }
    
    @Override
    public long getItemId(int position) {
        return 0;
    }
    
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        if (convertView == null) {
            convertView = inflater.inflate(R.layout.image_layout, null);
        }
    
        return convertView;
    }
    

    }

  3. 初始化您的网格视图或列表视图

`mImagesView = (GridView) findViewById(R.id.gridView_images);

mImagesView.setAdapter(new ImagesAdapter(images));`

【讨论】:

    猜你喜欢
    • 2012-02-21
    • 1970-01-01
    • 2022-12-18
    • 2011-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-16
    • 2010-11-20
    相关资源
    最近更新 更多