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();
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |