我正在写一个对话系统的应用程序。对话是由特定文本的卡片序列组成的。它们可以交替或重复。卡片由id、图像和文本组成。加载数据时,根据id,将显示所需的卡片。我的问题是,存储这些数据的最佳方式是什么?我猜有三个选择1.在数据类中存储数据,在strings.xml中存储文本1.以XML格式存储数据,并使用XML解析器解析数据1.存储室数据库数据在这种情况下,哪种方法是最实用和首选的?
bjp0bcyl1#
你自己提供的三个选项都可以很好地工作!要在它们之间做出选择,你必须回答一个简单的问题:您是否试图创建一个动态系统,在其中您可以创建和删除卡片,或者它将是静态数据?换句话说:如果您只打算显示静态数据,那么使用本地数据库实现所有内容的努力是否值得?我个人会使用数据库来实现它,因为我希望至少有一个选项来动态地完成所有事情。strings.xml仅用于静态UI元素。希望这对你有帮助!干杯
strings.xml
dly7yett2#
如果你想使用静态的。一个选择是将它们存储在一个枚举类中。因为数据是常量
enum class MyCards(val id: String, @DrawableRes val image: Int, @StringRes val text: Int) { CARD_1("1", R.drawable.card1_image, R.string.card1_text), CARD_2("2", R.drawable.card2_image, R.string.card2_text), CARD_3("2", R.drawable.card3_image, R.string.card3_text) }
枚举可以被序列化和反序列化,因此如果以后需要,可以在数据库中使用它们。
2条答案
按热度按时间bjp0bcyl1#
你自己提供的三个选项都可以很好地工作!
要在它们之间做出选择,你必须回答一个简单的问题:您是否试图创建一个动态系统,在其中您可以创建和删除卡片,或者它将是静态数据?
换句话说:如果您只打算显示静态数据,那么使用本地数据库实现所有内容的努力是否值得?
我个人会使用数据库来实现它,因为我希望至少有一个选项来动态地完成所有事情。
strings.xml
仅用于静态UI元素。希望这对你有帮助!干杯
dly7yett2#
如果你想使用静态的。一个选择是将它们存储在一个枚举类中。因为数据是常量
枚举可以被序列化和反序列化,因此如果以后需要,可以在数据库中使用它们。