1

GridViewでセルの高さを動的に設定するにはどうすればよいですか?また、セルを更新するにはどうすればよいですか?今、私は自分のAdapter実装を持っており、呼び出されOnGlobalLayoutListenerたときにGridViewの寸法を取得してから、寸法をonGlobalLayout保存します。でgetView()cell.setLayoutParams(mGridViewWidth / 3, mGridViewWidth / 3);私の問題は、全体GridViewが左に押し込まれすぎて、最後の列の一部しか表示されないことです。呼び出しnotifyDataChanged()は機能しているように見えますが、非効率に見えます。試しましたが、うまくmGridView.requestLayout()いきmGridView.invalidateViews()ませんでした。

GridView画面全体が正常に表示されることを確認しました。奇妙な位置にあるのは要素です。GridView's背景色をに設定する#0000ffと、画面は青になりました。要素に問題があります。リサイクルするのは間違っていLayoutParamsますか?

4

1 に答える 1

1

どうやら使用android:stretchMode="none"すると破壊されGridViewます。そのビットのコードを削除したので、これで動作します。

于 2012-09-04T03:01:23.677 に答える