我想制作一个音板。为此,我使用xml
文件(名称和声音)制作了listview
。用原始文件在列表视图中添加imageview
首先,我用声音的标题做了一个listview。当我们点击它时,播放声音。
MainActivity:
mSoundPlayer = new SoundPlayer(this);
Sound[] soundArray = SoundStore.getSounds(this);
ListView listView = (ListView) findViewById(R.id.listView);
final ArrayAdapter<Sound> adapter =
new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, soundArray);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView parent, View view, int position, long id) {
Sound sound = (Sound) parent.getItemAtPosition(position);
mSoundPlayer.playSound(sound);
}
});
我使用xml
文件索引声音和声音的名称。
文件:arrays.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="labels">
<item>First sound</item>
<item>Second soung</item>
</string-array>
<integer-array name="ids">
<item>@raw/a1</item>
<item>@raw/a2</item>
</integer-array>
</resources>
而最后,我的布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
tools:context="com.clemb.sardboard.MainActivity">
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/listView"
android:numColumns="auto_fit"
android:gravity="center"
android:columnWidth="100dp"
android:verticalSpacing="5dp"
android:stretchMode="columnWidth"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</RelativeLayout>
我只是想知道如何将声音文件的名称前添加图片。我可以在我的array.xml中做到这一点?
谢谢。