【问题标题】:Android - Accessing Array in multiple activitiesAndroid - 在多个活动中访问数组
【发布时间】:2014-01-18 20:55:45
【问题描述】:

只是一个真正的快速问题。我在一个活动中定义了一个数组,我正试图在另一个活动中访问它。我打算这样扩展它:

public class MyChallenges extends Main {

但我需要扩展“ListActivity”以使我的代码正常工作,因为我使用的是自定义列表视图,所以我不能扩展两个活动。如图:

public class MyChallenges extends ListActivity {

除了扩展主要活动之外,还有其他方法吗?这是我试图访问以进行读写的数组:

public String[][] arr = new String[2][6];

那么,简而言之,我如何从另一个类访问数组“arr”?谢谢大家!

【问题讨论】:

  • 有点不清楚,您是否想在另一个 Activity 中访问数组的内容,或者这是关于继承的问题 - 可以从子类访问变量?除非您是认真的,否则您不会扩展 ListActivity..
  • 我只需要在与定义的活动不同的活动中访问数组的内容

标签: java android arrays public


【解决方案1】:

创建一个包含数组的类,并从您的活动中引用该类。例如:

public class ArrayOfStuff
{
    public static String[][] arr = new String[2][6];
}

然后,要修改数组,请使用类似ArrayOfStuff.arr[1][1] = "foo";

编码愉快!

【讨论】:

  • 不客气,一定要投票帮助我。我在一个 android 应用上遇到了类似的问题,而且效果很好。
【解决方案2】:

资源文件的元素只能用于一维数组。换句话说,和之间的所有内容都被认为是一个字符串。

如果您想以您描述的方式存储数据(实际上是伪 XML),您需要使用 getStringArray(...) 将项目作为单个 String[] 获取并自己解析和元素。

我个人可能会使用分隔格式,例如...

巴林,12345 ...然后只需使用 split(...)。

或者,将每个定义为 JSONObject,例如...并将此数组视为 JSON 对象,并使用 JSON 方法获取元素的值...

{名称:巴林,代码:12345}

->只需在 res/values/strings.xml 中创建字符串数组: ->在你可以在整个应用程序中访问这个字符串数组之后......

【讨论】:

    猜你喜欢
    • 2011-10-19
    • 2017-07-19
    • 2023-03-26
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多