Android-怎样在View中调用Acitivity中的函数

发布于 2017-01-31 04:14:12 字数 83 浏览 1116 评论 2

有两个类,一个继承View,一个继承Activity,我想在View中使用Activity中的方法,应该怎样做呢?·····求解,最好有代码示例。谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

晚风撩人 2017-08-15 04:31:59

可以用广播的方式

//View里面这样发广播
Intent it = new Intent("Activity.method");
context.sendBroadcast(it)

//MainActivity里面要实现一个接收器接受广播消息,接收器里面调用Activity的方法

public class ActionReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if ("Activity.method".equalsIgnoreCase(intent.getAction())) {
methodToCall();
}
}
}

//注册接收器
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...

receiver = new ActionReceiver();
IntentFilter filter = new IntentFilter();
filter.addAction("Activity.method");
registerReceiver(receiver, filter);
...
}

晚风撩人 2017-08-12 15:23:26

既然都是类,那么用java的知识,在继承View的那个子类中创建继承自Activity的那个类的对象,然后通过这个对象调用所需要的方法即可。
public class A extends Activity{
public void b(){}
}

public class c extends View{
A a = new A();
a.b();

}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文