Android 带参数的构造函数调用问题,请帮忙讲解,如附图,谢谢!

 我来答
在博山寺抢票的花木兰
2014-03-06 · TA获得超过1044个赞
知道小有建树答主
回答量:175
采纳率:0%
帮助的人:158万
展开全部

HSuperImageView的构造函数 需要传一个Context类型的参数  HSuperIMageVIew(context)。MainActivity.this 继承自Activity,是个Context。但是PuDongLei.this 只是个普通类就不是Context了,所以会报错。

如果要在PuDongLei中用的话,你可以选择在PuDongLei构造的时候传入Context



public class PuDongLei{
    private Context mContext;
    
    private HSuperImageView imageView;
    
    public PuDongLei(Conext context){
     // 如果只在构造时用到context,直接这么写也行
     // imageView=new HSuperImageView(context)
     
     mContext=context;   
     initPuDongLei();
    }
    
    public void initPuDongLei(){
     imageView=new HSuperImageView(mContext);
    }
}


不管怎么做,传给HSuperImageView一个Context类型的参数就可以new了

更多追问追答
追问
这样写下面调用imageView的方法的时候,imageView报空指针,比如imageView.getXXXX();会报空啊!imageView会为null,求指正
追答
你传给PuDongHui构造函数的是个什么Context?
PuDonghui类代码和new PuDonghui时候的代码能贴上来吗?
ouyangxiao097
2014-03-06
知道答主
回答量:6
采纳率:0%
帮助的人:8647
展开全部
你的参数不对,简单理解就是this代表当前类的对象,在你这this就是PuDongLei的对象,显然不是Context的对象,所以自然报错
所以可以在PuDongLei类中声明一个Context成员变量,然后创建HSuperImageView对象时传入这个Context对象即可
追问
那下面调用HSuperImageView的方法的时候还是不能用啊,报对象是null啊,还要怎么写啊?谢谢
追答
photoedition2是null,只能说明你那个context有问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zeus_flo
2014-03-06 · TA获得超过118个赞
知道答主
回答量:95
采纳率:0%
帮助的人:68.8万
展开全部
你还是没理解this代表的是啥。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式