首先让我描述一下我的意图。我有一个带有一些民俗歌曲和歌词的XML DB。对于我的家人和朋友,我想开发一个Android应用程序,它将列出 AZ 顺序中的歌曲,点击/触摸歌曲标题后,将出现一个文本/歌词(这样我们都可以唱出同样的歌曲字)。
我对Java和Android开发不是很熟悉,但我设法创建了一个应用程序,在第一个Activity
中有一个按钮“显示所有歌曲”,然后按下另一个Activity
ListView
列出了歌曲(使用XMLPullHandler
解析器)。 Collections.sort()
负责订购(虽然不是100%,因为以国家字符开头的项目被推到了最后)。请参见截图:
但现在我不确定如何继续显示歌曲文本。我的想法:
SongActivity
并显示歌词。但是我应该创建例如100个意图和活动,或者我可以只用一个吗?在后一种情况下 - 应用程序将如何知道哪个文本属于所点击的歌曲?ListView
中显示,但是使用属性invisible
(在html中很明显,但在java中 - 我不确定。 ..)xml文件中歌曲的示例:
<songs>
<song>
<id>1</id>
<title>Zvalila sa skala</title>
<lyrics>1. [:Zvalila sa skala z vŕšku do Dunaja,:]
[:prenes ma, má milá, prenes ma, má milá, veď je voda malá.:]
2. [:Ja bych ťa preniesla, hoc by bola väčšia,:]
[:ale že som ti nie, ale že som ti nie, tvoja najmilejšia.:]
3. [:Keby ja vedela, kde môj milý býva,:]
[:zaletela by som, zaletela by som, na jeho biely dom.:]
</lyrics>
<type>Valčík</type>
</song> ...
有人可以帮我指点一下吗?我将非常感激。
On the picture is the actual status with visible values of variables
答案 0 :(得分:0)
要实现,点击一个项目后,新的歌曲活动将会 出现并将显示歌词。但是我应该创建例如100 意图和活动,或者我可以只用一个吗?在后来 案例 - 应用程序将如何知道哪个文本属于所点击的歌曲?
不,你不必写100个意图或活动。你可以只使用一个更通用和方便的。
将歌曲歌词文本与歌曲标题一起加载并显示 在列表视图中,但有一个属性&#34;隐形&#34; (在HTML中是 明确,但在java - 我不确定...)
虽然你的问题不是很明确,但我猜你需要显示歌曲的标题以及一些文字作为辅助文字。您尝试使用.yaml
属性让我感觉隐藏了辅助文本,一旦单击列表项,使辅助文本可见 - 是吗?
如果我找到你,你需要修改你invisible
使用的适配器。您需要自定义适配器,并在绑定列表中的每个元素时,需要通过跟踪选择的项目来自行显示/隐藏辅助文本。
我建议您使用RecyclerView
来显示列表中的歌曲列表。要使用自定义适配器实现RecyclerView
,您可以通过互联网找到大量文档。在这里,我附上一个例子。
RecyclerView