我的项目中有5个活动,其中一个活动以下列方式导致另一活动:
每个选定项都是每个活动的字符串。
用户从每个活动中,从DropDownList中选择一个选项,然后前进到下一个活动。我想在上一个活动(着陆)时收集所有5个变量。我需要知道一些有效的方法来做到这一点。
答案 0 :(得分:0)
我使用 Kotlin ,因此示例代码仅在 Kotlin 中,但是我将尝试注释掉每一行代码。
解决方案1::创建一个SingleTon
类来保存数据并在结束活动时使用其数据。
class DataHolder { //public class
companion object { //Equavilent to Java static.
var variable1 = 0
var variable2 = "Some string" //Define your static variables.
....
}
}
在“活动1”->“活动2”中访问此 Singleton 类,依此类推。当您完成结局活动时,只需简单地重新访问该类并检索存储的相应数据即可。
专业:在您的活动中减少重复的意图代码。
缺点:显然,静态变量是永久变量,除非其类加载器超出范围。由于数据很少,因此不必担心太多。
解决方案2::创建意图,加载数据并将其逐步传递到您的活动中,并在结束活动中检索数据。唯一的缺点是,您必须格外小心地重复插入数据,并使用相应的键来抓取数据。除非您格外小心,否则可能容易发生“错误”。