Android问题:怎么在其它类中用Toast
比如我在A类中生成一个B类的对象,在B类中有一个方法里面要用Toast显示信息。Toast.makeText(????,"提示信息",Toast.LENGTH_SHORT...
比如我在A类中生成一个B类的对象,在B类中有一个方法里面要用Toast显示信息。
Toast.makeText(????, "提示信息", Toast.LENGTH_SHORT).show();
问号的那个地方要怎么写?
我在Activity中直接this就行了,但是我在其他类中就不行,最好举个例子。
还有就是告诉我怎么来确定这个Context。 展开
Toast.makeText(????, "提示信息", Toast.LENGTH_SHORT).show();
问号的那个地方要怎么写?
我在Activity中直接this就行了,但是我在其他类中就不行,最好举个例子。
还有就是告诉我怎么来确定这个Context。 展开
1个回答
展开全部
A.this 就是A这个对象了。
1. 如果B是A的内嵌类或A内定义的方法:
Toast.makeText(A.this, "提示信息", Toast.LENGTH_SHORT).show();
2. 否则可以把A对象当做Context mContext传给B,B内实现时再
Toast.makeText(mContext, "提示信息", Toast.LENGTH_SHORT).show();
1. 如果B是A的内嵌类或A内定义的方法:
Toast.makeText(A.this, "提示信息", Toast.LENGTH_SHORT).show();
2. 否则可以把A对象当做Context mContext传给B,B内实现时再
Toast.makeText(mContext, "提示信息", Toast.LENGTH_SHORT).show();
追问
那个mContext是怎么得到的,我直接在Toast语句上面加上Context mContext = new A();不行
追答
你不是“在A类中生成一个B类对象”吗?
在B中定义成员变量Context mContext,在B的构造方法中把A对象传进去:
Context mContext
B(Context context) {
mContext = context;
}
void myShow() {
Toast.makeText(mContext, "提示信息", Toast.LENGTH_SHORT).show();
}
微测检测5.10
2023-05-10 广告
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇...
点击进入详情页
本回答由微测检测5.10提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询