如何使用 putExtra 将数据发送到多个活动
how to send data to multiple activities using putExtra
我有以下代码:
Intent intent = new Intent();
intent.setClass(getApplicationContext(), DetailView.class);
intent.putExtra("position", Integer.toString(position + 1));
startActivity(intent);
如您所见,我正在使用 putExtra 将位置值发送到名为 class 的 DetailView。我想将相同的位置发送到另一个 class,我不想启动 activity,我只想发送 "position" 的值。你们中的任何人都可以让我知道如何做到这一点。欢迎所有建议。提前致谢。如果需要更多信息,请告诉我。
如果您不想启动其他 activity,我可以为您提供三种选择。
1. 创建 public static int position
并访问它查看 class
name.
当setting
值ClassName.position=value here..
当来自任何 class
的 gettting
用作 ClassName.position;
2. 使用 setter
和 getter
方法创建 class
。
3. 将值存储在 sharedPrefrence
当您的 position
值发生变化时更新以上各项。
这个需要传递position变量的class还能用在什么地方?
如果您已经在创建 class 的新实例,最好的方法可能是简单地通过构造函数传递值。
否则我建议将 public
或 public static
方法添加到要接收位置变量的 class 中。
public class PositionReceiver {
private int mPosition;
public void setPosition(int position){
mPosition = position;
}
}
或
public class PositionReceiver {
private static int sPosition;
public static setPosition(int position){
sPosition = position;
}
}
我有以下代码:
Intent intent = new Intent();
intent.setClass(getApplicationContext(), DetailView.class);
intent.putExtra("position", Integer.toString(position + 1));
startActivity(intent);
如您所见,我正在使用 putExtra 将位置值发送到名为 class 的 DetailView。我想将相同的位置发送到另一个 class,我不想启动 activity,我只想发送 "position" 的值。你们中的任何人都可以让我知道如何做到这一点。欢迎所有建议。提前致谢。如果需要更多信息,请告诉我。
如果您不想启动其他 activity,我可以为您提供三种选择。
1. 创建 public static int position
并访问它查看 class
name.
当setting
值ClassName.position=value here..
当来自任何 class
的 gettting
用作 ClassName.position;
2. 使用 setter
和 getter
方法创建 class
。
3. 将值存储在 sharedPrefrence
当您的 position
值发生变化时更新以上各项。
这个需要传递position变量的class还能用在什么地方?
如果您已经在创建 class 的新实例,最好的方法可能是简单地通过构造函数传递值。
否则我建议将 public
或 public static
方法添加到要接收位置变量的 class 中。
public class PositionReceiver {
private int mPosition;
public void setPosition(int position){
mPosition = position;
}
}
或
public class PositionReceiver {
private static int sPosition;
public static setPosition(int position){
sPosition = position;
}
}