我有一个 Activity ,它用一个接口(interface)实例化一个类。如何仅通过对接口(interface)的引用来获取 MyClass 中的 android 上下文?
public class TestActivity extends Activity implements MyInterface {
@Override
public void onCreate(final Bundle savedInstanceState) {
final MyClass myClass = new MyClass(this);
}
@Override
public void onChange() {
}
}
public interface MyInterface {
void onChange();
}
public class MyClass {
public MyClass(MyInterface myInterface) {
// how to get context from myInterface ???
}
}
最佳答案
public class MyClass {
public MyClass(MyInterface myInterface) {
// Get Context
Context context = null;
if (myInterface instanceOf Context)
context = (Context)myInterface;
}
}
如果您的 Activity
(extends Context
)正在实现 MyInterface
并且您将其传递给 MyClass
,您只需要将其转换为适当的类型即可。
关于android - 如何从接口(interface)引用中获取android上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43237322/