Android - 在多个活动中访问数组
Posted
技术标签:
【中文标题】Android - 在多个活动中访问数组【英文标题】:Android - Accessing Array in multiple activities 【发布时间】: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.. 我只需要在与定义的活动不同的活动中访问数组的内容 【参考方案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 中创建字符串数组: ->在你可以在整个应用程序中访问这个字符串数组之后......
【讨论】:
以上是关于Android - 在多个活动中访问数组的主要内容,如果未能解决你的问题,请参考以下文章
Android - 如何在一个活动中禁用多个微调器的特定项目