Android编程中,有的方法只能在Activity类中才能实现,如Toast,但是比如在自己写的view类中有需要实现toast时候咋办呢。当然方法有很多,本文提供一种通过Java接口来实现的方法。在B类中执行只能在A类中可以运行的代码。
B类代码如下:
public class BClass {
//声明一个接口
public BInterface bintf;
//在这个类里面创建一个接口
interface BInterface
{
public void doSth();
}
//需要传递接口
public BClass(BInterface bf)
{
this.bintf = bf;
}
public void bPrint()
{
System.out.println("this is B class");
bintf.doSth();
}
}
A类代码:
public class AClass {
public static void main(String[] args)
{
String AName = "in A";
BClass bc = new BClass( new BClass.BInterface() {
@Override
public void doSth() {
// TODO Auto-generated method stub
System.out.println("This is "+AName);
}
});
bc.bPrint();
}
}