0

我有一个 GridView 适配器,它基于我试图弄清楚的一些示例代码。基本上,我有一个应用程序数组列表,我传递给适配器,Applications 类,除其他外,包含所有被用户限定为“Arcade”的应用程序的 packageinfo。我想要的是从 packageinfo 中提取图标,然后将它们炸毁并将它们放入 GridView,下面没有文本或其他任何内容,只有应用程序图标。

public class GridAdapter extends BaseAdapter {
    private Context mContext;
    ArrayList<Applications> mlistArcadeApps;

    public GridAdapter(Context context, ArrayList<Applications> listArcadeApps) {
        this.mlistArcadeApps = listArcadeApps;
        mContext = context;
    }

    public int getCount() {
        return mlistArcadeApps.size();
    }

    public Object getItem(int position) {
        return mlistArcadeApps.get(position);
    }

    public long getItemId(int position) {
        return 0;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        ImageView imageView = 


    }
}

到目前为止我有这么多,我不完全确定这是否正确,我只是想掌握如何使用 GridViews,是否可以将应用程序图标提取为 ImageView 对象?或者我应该看看另一种方法?

4

1 回答 1

0

是的,您做得对,您需要为列表中的每个项目创建另一个 XML 文件。创建 XML 文件并ImageView放入LinearLayout. 之后,您需要将此 xml 文件传递​​给您的GridView.

在您的getView方法中,您可以更新ImageView并显示您的图标。

本教程解释清楚:Android GridView 布局教程

我刚刚意识到,在本教程中,他不会为每个项目创建 XML 文件,而是在运行时创建新的 ImageView。

如果您查看此示例,它会以不同的方式显示:Android GridView Example

于 2013-06-24T22:21:51.143 回答