3

私のアクティビティでは、onCreate() 内に GridView とカスタム アダプターがあります。

    GridView vg = (GridView) findViewById(R.id.gridview);
    ArrayList<CustomPart> items = ...;
    vg.setAdapter(new TaskVariantsAdapter(this, items));

一部の画像に対して特別なスケーリングを行うには、GridView の列の実際の幅を知る必要があります。getView() の「親」の列幅がすでにゼロではないことに気付きました。少なくとも、parent.getColumnWidth() から整数を取得できます。

        // create a new ImageView for each item referenced by the Adapter
        public View getView(int position, View convertView, ViewGroup parent) {
           ....
           int width = ((GridView) parent).getColumnWidth();
           ....
        }

親が既に測定されており、columnWidth が正しいことを確認できますか? (もちろん)アクティビティにはonCreate()の幅と高さがないため、私は尋ねています。activity.onCreate()内のGridViewにadapterをアタッチしたとしても、すべてのレイアウト測定後に最初のadapter.getView()がどうなるかを知る必要があります。それを確認していただけますか?

4

0 に答える 0