2013-04-29 134 views
0

嘿家伙我试图在我的MainActivity中创建视图时出现错误。下面我从我的自定义GridView和Activity中提供了一小段代码。出于某种原因,当我试图在参数传递到GridView控件在OnCreate在MainActivity我得到在Eclipse以下错误:尝试创建我自己的视图类时出现错误?

构造GridView控件(这一点,细胞[] [])是未定义

但在我的GridView类中,我清楚地提供了这样的构造函数。不确定是什么问题。我甚至宣布了更多的构造函数,因为有人提出了这个建议,但没有运气。我是在声明上下文是否正确,或者在XML方面需要做些什么?有人可以告诉我做错了什么吗?由于

定制的GridView布局:

public class GridView extends View { 

    Context context; 
    private Cell[][] grid; //Cell class - is an interface 

    //constructors 
    public GridView (Context context){ 
     super(context); 
    } 

    public GridView (Context context, AttributeSet attrs, int defStyle){ 
     super(context, attrs); 
    } 

    public GridView (Context context, AttributeSet attrs){ 
     super(context, attrs); 
    } 


    public GridView(Context context, Cell[][] grid) { 
     super(context); 
     this.context = context; 
     this.grid = grid; 
     //...more stuff 
    } 
    //...more stuff 
} 

主要活动:

public class MainActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    Display display = getWindowManager().getDefaultDisplay(); 
    Point size = new Point(); 
    display.getSize(size); 
    int width = size.x; 
    int height = size.y; 

    Cell[][] grid = new Cell[height][width]; 
    final GridView view = new GridView(this, grid); 

    //...more stuff 

} 
//...more stuff 

}

+0

告诉我们declaraiton – Unknown 2013-04-29 11:54:57

+0

也许wron进口小区类,叫什么名字?你可以检查=? – Blackbelt 2013-04-29 11:56:14

回答

0

我觉得你的问题是,你正在使用的是Android已经实现了一个类名(因此当你调用类的构造函数时,编译器可能会在它们之间产生混淆。

要么重新命名您的实现,以特有的系统(MyGridView用于例如)或专门致电类名,包括你的包名(Your.Namespace.GridView

相关问题