我在一个活动中设置了一个2D数组,我想把它调成一个片段,这样我就可以使用它的内容了。该数组称为“名称”。我不明白这样做的步骤。
答案 0 :(得分:1)
您可能想要阅读 Singleton Design Pattern 。但与此同时,我会让你开始。
创建一个“MyData”类,它将包含您要共享的所有变量/数组。然后你只需要一个getter方法来调用该类。完成后,您将能够访问所有共享变量。 :)
示例MyData类:
public class MyData
{
private static MyData _instance;
/* <Shared variables go here> */
public String sharedVariable = "yay this is shared!";
public String sharedVariable2 = "this is also shared!";
public String myArray[][];
/* </Variables> */
public static MyData getMyData()
{
if(_instance == null)
_instance = new MyData();
return _instance;
}
}
您要设置数据的示例活动/片段:
MyData data = MyData.getMyData();
data.myArray[0][0] = "test";
您要获取所设置数据的示例活动/片段:
MyData data = MyData.getMyData();
String result = "";
result = data.myArray[0][0];
// result will now = "test"
通过使用这个结构,如果第一次调用MyData类,它将创建实例,如果已经调用它,那么它将只返回_instance,它将包含你设置的所有变量。
免责声明:当你的应用程序被最小化或闲置一段时间后,Android操作系统将清除你班级中的所有变量。您有三种方法可以避免这种情况:
我通常使用选项3,因为它通常最符合我的需求。
祝你好运!答案 1 :(得分:0)
将您的数组公开,然后从您的片段调用,如
OtherActivity.array []
您可以正常执行所有其他操作
答案 2 :(得分:0)