Android 如何在GridView中获取项目的宽度和高度
这是我的密码Android 如何在GridView中获取项目的宽度和高度,android,gridview,Android,Gridview,这是我的密码 @Override public View getView(final int position, View view, ViewGroup viewGroup) { View v = view; final ViewHolder viewHolder; final String typeName; if (v == null) { v = inflater.inflate(R.layout.gridview_item, viewGroup, f
@Override
public View getView(final int position, View view, ViewGroup viewGroup) {
View v = view;
final ViewHolder viewHolder;
final String typeName;
if (v == null) {
v = inflater.inflate(R.layout.gridview_item, viewGroup, false);
viewHolder = new ViewHolder();
viewHolder.mView = v.findViewById(R.id.parentLayout);
viewHolder.picture = (ImageView) v.findViewById(R.id.picture);
viewHolder.name = (TextView) v.findViewById(R.id.text);
v.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) v.getTag();
}
item = (ResourcesDrawables) getItem(position);
int width = viewHolder.mView.getWidth();
int height = viewHolder.mView.getHeight();
我尝试获取宽度/高度,但它返回0,如何获取项目的宽度和高度?如果将gridview单元格放入
getView()
方法中,则无法正确获取该单元格的高度和宽度。您试图在绘制视图之前测量视图。将其放入onMeasure()
或onSizeChanged()
或尝试实现onGlobalLayoutListener()
。你最好的选择就是这三种选择之一。这里的答案是:应该可以帮助您如果将gridview单元格放入getView()
方法中,您将无法正确获取该单元格的高度和宽度。您试图在绘制视图之前测量视图。将其放入onMeasure()
或onSizeChanged()
或尝试实现onGlobalLayoutListener()
。你最好的选择就是这三种选择之一。这里的答案是:应该可以帮助您如果将gridview单元格放入getView()
方法中,您将无法正确获取该单元格的高度和宽度。您试图在绘制视图之前测量视图。将其放入onMeasure()
或onSizeChanged()
或尝试实现onGlobalLayoutListener()
。你最好的选择就是这三种选择之一。这里的答案是:应该可以帮助您如果将gridview单元格放入getView()
方法中,您将无法正确获取该单元格的高度和宽度。您试图在绘制视图之前测量视图。将其放入onMeasure()
或onSizeChanged()
或尝试实现onGlobalLayoutListener()
。你最好的选择就是这三种选择之一。这里的答案是:应该对你有帮助