今天我遇到一个关于自定义监听器的问题。我已经尝试了很长一段时间的搜索和思考,但我还没有找到答案。我来这里寻求帮助。问题是如何通过Android自定义侦听器在活动之间传输数据?
答案 0 :(得分:1)
不要通过自定义侦听器在活动之间传输数据,因为只有一个活动处于活动状态。 Android应用程序不应该那样工作。
使用Bundle
代替活动之间发送数据。
Intent intent = new Intent(this, YourActivity.class);
intent.putExtra("key", yourValue);
startActivity(intent);
内部YourActivity
:
getIntent().getExtras().getString("key");
答案 1 :(得分:0)
监听器仅用于侦听事件而不用于数据传输。但您可以通过侦听侦听器中的事件来设置/获取值。
如果我处于你的状态,我会使用bundle将数据从一个活动转移到另一个活动: 来自ActivityA(从此活动发送数据)
//Create the bundle
Bundle bundle = new Bundle();
//Add your data from getFactualResults method to bundle
bundle.putString("USER_NAME", userName);
//Add the bundle to the intent
i.putExtras(bundle);
startActivity(i);
将ActivityB中的数据作为:
Bundle bundle = getIntent().getExtras();
//Extract the data…
String venName = bundle.getString("USER_NAME");