[英]onDraw, onmeasure does not gets called
我有一個LinearLayout具有gridview:
public class ParentClass implements OnClickListener , OnFocusChangeListener
{
//instance variables.
//constructors.
//initialization method:
public initMethod()
{
//initializes gridview , set adapters, listeners etc.
//+ code for adding gridview to linear layout etc.
}
//other methods
...
}
class Grid extends ViewGroup{
private GridView _gridView = null;
Grid()
{
super(MyActivity);
//code for grid-view initialization goes here
}
public void setAdapter(GridViewAdapter gridViewAdapter) {
// TODO Auto-generated method stub
_gridView.setAdapter(gridViewAdapter);
}
@Override
protected void onDraw(android.graphics.Canvas canvas) {
super.onDraw(canvas);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
{
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
// TODO Auto-generated method stub
int i = 0;
}
}
}
現在我希望當我在Grid類的重寫方法中放置一個breakpint時,它應該會成功! 為什么斷點不被擊中? 我在這里缺少基本的東西嗎?
根據問題注釋,Grid已實例化但未添加到布局中,因此它從未構成View層次結構的一部分,因此沒有什么可以稱呼它為onLayout()等。
確實在Layout._gridView中引用了一個包含的GridView實例,因此確實增加了布局。
可能是Grid類應該擴展GridView而不是包含它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.