分享

Android 一个Activity B调用另一个Activity A里面的某个方法,怎么调?

 gearss 2016-05-25

【阿里云限时折扣】真正免费.com.xin域名0元抢>>> ?  

我有两个Activity 分别是 A和B,程序启动先走的是A,A触发某事件再走B,然后要在B里面调用下A的某个方法,在AndroidMainfest.xml 文件中如下:

<activity android:name=".A" android:lanuchMode="singleInstance">

    <intent-filter>

        //某些省略

        <data android:scheme="rs" android:host="callback"></data>

    </intent-filter>

</activity>

<activity android:name=".B"></activity>

因为有红色标注的部分,要是用Intent的话,它老是走A里面的onNewIntent()方法.

在线求解!

挖哈哈 挖哈哈
发帖于 3年前
8回/16219阅

按票数排序  显示最新答案   共有8个答案 (最后回答: 10个月前 )

    0
  • w_xiaolong w_xiao... 3年前

    声明一个类AFactory,里面有静态变量public static Activity A;在A中调用 AFactory.A = this;

    这样在b中就可以直接调用AFactory.A.function();就行了,哈哈

    --- 共有 1 条评论 ---
    • 挖哈哈 是新建一个普通类叫 ActivityFactory,里面有一个 public static Activity lg? 然后在AActivity里面哪里调用它呢? (3年前)   回复
    评论(1)| 引用此答案| 举报 (2012-12-18 10:32)
  • 0
  • cut cut 3年前

    通过一个公有static的变量传递类引用,够简单够暴力

    --- 共有 3 条评论 ---
    • 挖哈哈 回复 @cut : 其实吧。。我还是不懂,有空的话就给个代码片段提示下吧,我看代码比看汉字来的快些。-、- (3年前)   回复
    • cut 回复 @我在找门 : 不是,而是在你类定义的时候加个公有静态的变量用来传递当前类对象的引用,这个方法100%可行,但不建议,最快最简单就这样搞,MFC,QT那些经常那么搞 (3年前)   回复
    • 挖哈哈 哥诶,别说的这么深,我不明白!我那个方法因为里面有写startActivity();没办法把方法变成static的,你说的变量传递类引用是个什么啊 (3年前)   回复
    评论(3)| 引用此答案| 举报 (2012-12-17 20:47)
  • 0
  • 挖哈哈 挖哈哈 3年前

    我的A类是做认证用的,里面有一个认证的方法initDate(),B类是给A类里请求url地址设置IP的一个弹出框,想在点[确定]按钮时调用A类的认证方法initDate()。

    我是用 A a = new A(); a.initDate();

    这样的话确实走得通,但是在最后onNewIntent(Intent intent)时,出现空指针,不知道为什么了!

    评论(0)| 引用此答案| 举报 (2012-12-18 13:54)
  • 0
  • 挖哈哈 挖哈哈 3年前

    引用来自“w_xiaolong”的答案

    声明一个类AFactory,里面有静态变量public static Activity A;在A中调用 AFactory.A = this;

    这样在b中就可以直接调用AFactory.A.function();就行了,哈哈

    是我2了,已经OK了,一楼滴哥们同样感谢你,3Q!
    评论(0)| 引用此答案| 举报 (2012-12-18 14:28)
  • 0
  • 小鲅鱼 小鲅鱼 3年前
    static传参数最方便,但用application最好
    评论(0)| 引用此答案| 举报| 来自 Android (2012-12-18 14:51)
  • 0
  • Loyzi Loyzi 3年前

    A类是做认证用的,里面有一个认证的方法initDate(),B类是给A类里请求url地址设置IP的一个弹出框,想在点[确定]按钮时调用A类的认证方法initDate()。

    ----------

    看起来似乎是想用startActivityForResult,然后在返回结果时判断调用A类里的方法。Android底层设置页面经常这么用,例如为要联网,但是需要先判断设置代理,然后设置完返回直接登录,是这样么?

    --- 共有 1 条评论 ---
    评论(1)| 引用此答案| 举报 (2013-03-12 16:35)
  • 0
  • passenger passenger 2年前

    好厉害啊!这样也行啊,学习了!

    评论(0)| 引用此答案| 举报 (2014-05-09 09:33)
  • 0
  • 天望 天望 10个月前

    受益匪浅!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多