【问题标题】:Android help, trying to get value moved from one class to another (android app)Android 帮助,试图将价值从一个类转移到另一个类(android 应用程序)
【发布时间】:2014-07-24 04:35:00
【问题描述】:

我正在尝试从 B 类中获取一个函数和一个 int 到 A 类中。有人可以帮助我吗?我已经被困在这里好几天了。

B 类 https://github.com/akballow/help-me-please/blob/master/nRFToolbox/src/no/nordicsemi/android/nrftoolbox/profile/BleProfileServiceReadyActivity.java

A 类 https://github.com/akballow/help-me-please/blob/master/nRFToolbox/src/no/nordicsemi/android/nrftoolbox/proximity/ProximityManager.java

我想要做的是从 A 类调用函数 getRssi(),在 B 类的函数 onRecive() 中调用,我在其中放置代码“mble.getRssi();”然后获取从 A 类到 B 类的 int rssilevel。

有人可以向我解释一下我是如何做到这一点的吗?我试图在 B 类中“公开 PROximityManager mble”,但它最终会失败。我非常绝望,如果有人能帮我完成这件事,我会从贝宝寄给你 5 美元作为奖励(只有在合法的情况下,我不想在这里惹麻烦)。

谢谢

【问题讨论】:

  • 让特定的方法静态化怎么样,不会有帮助吗?
  • 你能提供一个例子吗,你的意思是让 rssilevel 静态吗?因为每当从 B 类调用 getRssi 时,我都需要更改 rssilevel。
  • 如果 rssilevel 是全局变量,那么您可以将其设为静态,我的意思是在 cals A 中,将 getRssi 设为静态方法,然后从 Class B 中只需通过 A.getRssi 访问它..跨度>
  • 等一下,我想我弄错了,你能把这个类的代码也分享给 BleProfileService 吗??
  • 您应该能够返回目录查看所有内容。非常感谢您花时间提供帮助。

标签: java android class transfer


【解决方案1】:

首先您应该编辑您的帖子,因为您的链接是反向的。 getRssi() 函数位于您标记为 B 类的链接中,而 onRecive() 函数位于您链接为 A 类的代码中......或者您的措辞可能有点混乱。

无论哪种方式,如果您只想从 getRssi() 获取一个整数值,则将 getRssi() 的返回类型从 void 更改为 int 并指定您希望返回的值....例如

public int getRssi(int rssilevel)
{
    this.rssilevel = rssilevel;

    return rssilevel; 
} 

回到调用函数的类中,将 int 的值设置为 getRssi() 函数,即使返回的整数现在也将是 int 的值

int x = mble.getRssi(some_int_argument);

【讨论】:

  • mBluetoothGatt.readRemoteRssi();需要先运行,然后才能返回 rssilevel。我可以把它放在 getRssi 函数中吗?
  • 我做了你所说的一切,但我得到了错误“BleProfileService 类型中的方法 getRssi() 不适用于参数 (int)”
  • 发现问题,我的 mble 类名错误,我能够编译,但应用程序在到达该行时立即在手机上崩溃。任何想法,这就是我一直遇到的问题
  • 请用您的新代码和错误日志更新您的帖子,您可以在 getRssi() 函数中放入您需要的任何内容,只要它返回一个 int 作为其最后一行代码。我不确定是什么导致您的应用程序崩溃,但是如果您为 rssilevel 确定了一个值,并且您设置了一个等于 getRssi() 函数的整数,该函数应该返回您的 int,我猜那将是 rssilevel ......那么应用程序崩溃可能与其他问题有关请发布您的代码
  • 运行时出现 NullPointerException
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-13
相关资源
最近更新 更多