0

我在不同的活动 A 和 B 中有两个 textViews 需要具有相同的值。我不能使用 putExtra,因为我不会从 Activity A 转到 B。我不想使用 Shared Preferences。我不想从sqlite中查询。当我在活动 B 上时,有没有办法让我在活动 A 中调用文本?

我能够从 Activity B 获取 Activity A 的布局值,但不能从 Activity A 的 textView 中获取文本值

在活动 B

Name1.setText(R.layout.menuview);

这将为我提供 xml 文件的名称值。我想要 xml 文件中这个 textView 的值。

在活动 A

m1a = (TextView) findViewById(R.id.m1a);
4

3 回答 3

1

为什么你不能使用共享偏好?
您可以使用静态变量并将值保存在内存中。

于 2013-09-15T03:47:50.400 回答
0

您可以在辅助类上使用静态变量。

public class Helper { static String text; }

于 2013-09-15T03:41:51.893 回答
0

一个活动通过引用另一个活动直接更改视图属性的方式不是好方法。因为活动应该引用另一个,这是内存泄漏的原因。

我建议以下方法

1) 本地广播接收器

如果您使用它,则活动之间的依赖关系将消失。您还可以实时观察变化。但是要添加一些代码。

2) 共享偏好

这是另一种替代方法,但它使用磁盘 io 和磁盘空间。如果您必须永久保存值,请使用这种方式。

于 2013-09-15T04:25:55.810 回答