在自定义View中如何引用(或者回调)activity?
在Activity A中自定义了一个View V,想在V中引用A中的另一个图片P,来控制P的显示或者不显示。如何来实现阿?现在的我的做法是在类A中定义了一个类A类型的静态变量instance,通过instance来操作Activity A的所有成员和方法。但这样做会引起内存泄露的问题。 --------------------编程问答-------------------- 有没有人知道阿 --------------------编程问答-------------------- 可以在Activity里面写一个showIMG()方法
在你的View里面调用这个Activity的方法来控制显示 隐藏 --------------------编程问答-------------------- 在V中定义个接口,接口中写方法控制图片,A实现接口。在实现相对应方法中操作P --------------------编程问答-------------------- 类是监听者
public class ViewV extends View {
private OperatorP mOperatorP;
public ViewV(Context context) {
super(context);
}
interface OperatorP{
public void showP();
public void hideP();
}
public void setOperatorP(OperatorP operatorP){
mOperatorP = operatorP;
}
}
public class ActivityA extends Activity implements OperatorP{
private Bitmap bitmapP;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 获取 view 设置它的OperatorP
}
@Override
public void showP() {
// bitmapP 显示
}
@Override
public void hideP() {
// bitmapP 隐藏
}
} --------------------编程问答--------------------
恩,这个方法可以的,我也是这个原理,从View V中实现在Activty中才可以实现的操作
补充:移动开发 , Android