0
我想在我的應用程序中獲取GridView項目大小。我只知道我能得到的商品尺寸回調:android如何獲得gridview項目大小
private class GridViewItemSelectedListener implements OnItemSelectedListener {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position,
long id) {
// TODO Auto-generated method stub
int viewh = view.getHeight();
int vieww = view.getWidth();
Log.d(TAG, view.getWidth() + "," + view.getHeight() +
" > position:(" +view.getX() + " , " + view.getY() + ")");
}
}
,但我不能得到的onResume的項目大小,即使我嘗試在處理程序:
private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch(msg.what) {
case UPDATE_GRIDVIEW:
View itemView = mGridView.getChildAt(0); //this will return null pointer;
final FrameLayout.LayoutParams lp= new FrameLayout.LayoutParams(itemView.getLayoutParams());
lp.setMargins(-3, 0, 0, 0);
selectorView.setLayoutParams(lp);
break;
default:
break;
}
}
};
我引發的onResume處理程序方法
@Override
protected void onResume() {
Message msg = new Message();
msg.what = UPDATE_GRIDVIEW;
mHandler.sendMessage(msg);
super.onResume();
}
我甚至試圖調用GridView的方法getSelectedItem()等......,無法做到這一點。你能否給我一些建議,原因是什麼?以及如何獲取gridview項目大小?
我打算在Activity中獲取大小;獲取大小後,我將根據GridView項目大小重置我的selectorView。謝謝 – gladman