我需要将数据从Activity A
传递到Activity B
并向后传递,因为Activity A
有方法,初始化类,管理蓝牙连接,我无法初始化该类来自Activity B
,因为活动A中的方法已经初始化了它。
我尝试制作我需要制作static
的方法,但是从静态方法我不能从我的蓝牙类中调用non-static
方法:
public static void setup(String address) {
bt = new Bluetooth(this, handler);
outStringBuffer = new StringBuffer("");
bt.startConn(address);
//Java throws error that bt is non-static
}
所以我的问题:
setup()
为non-static
时,有没有办法从另一个班级拨打startActivityForResult()
?请注意,startActivity()
或Activity B
无法解决此问题,因为我需要多次从A
向Activity A
发送数据并Activity B
应该从我的蓝牙类中调用方法,该方法通过蓝牙发送数据。
P.S 我找到了一种使用ViewFlipper的方法,但在我的情况下,这太复杂了,无法合并两个类。
我无法直接从Activity A
向蓝牙类发送数据,因为TokenMismatchException in VerifyCsrfToken.php line 68
已经打开了套接字,Java会抛出异常,无法启动活动或类似的东西。
答案 0 :(得分:0)
好的,非常好......将活动1中的字符串传递给您需要的活动2
传递和检索此方法的方法,意图
public void setUp (String address) {
/* start an intent to pass the string data*/
Intent intent = new Intent(GridViewActivity.this, MovieDetailActivity.class);
/* use the intent object to pass string to another activity using putExtra method */
intent.putExtra("your string");
start intent(intent);
}
然后在您的接收活动中使用getStringExtra
final String original_title = getIntent().getStringExtra("your string");
然后您可以使用Intent和PutExra以及getIntent和getStringExtra方法从活动中使用此变量传递
您可以更多地了解这一点。使用意图传递来自活动的数据。