播放列表放在一个表格里,而这个表格放在一个LinearLayout里面,新建一个名为musicname的xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout01"
android:background="#eef5fd"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
</LinearLayout>
然后获得存放歌曲信息的二维数组,就可写出播放列表的界面
setContentView(R.layout.musicname);
table= new Table(
PlayerActivity.this,
width,//表示列宽
musicname,//表示列名
height,//表头高度
fontSize,//表头字体大小
fontColor,//表头字体颜色
frameColor,//边框颜色
headColor,//表头背景颜色
oddColor,//表体单数行背景颜色
evenColor,//表体偶数行背景颜色
biaotiColor,//表体文字颜色
tableContent,//表体内容
number,//每页显示的行数
moveNumber,//每次移动的行数
isNumber//表示是否是数字串
);
LinearLayout ll=(LinearLayout)findViewById(R.id.LinearLayout01);
ll.addView(table);
//实现表格的监听方法
table.addTableClickListener(
new TableClickListener(){
@Override
public void clickItem(Table eventSource, int row) {
currentMusic=row;//当前歌曲的索引等于列表的当前行数。
musicName=eventSource.tableContent[currentMusic][1].trim();
if(musicName.length()>11)
{
musicName=musicName.substring(0, 11)+"...";
}
startPauseButton=1;//让播放按钮为播放状态
new Thread()
{
public void run()
{
playMusic(currentMusic);
}
}.start();
hd.sendEmptyMessage(GOPLAYMUSIC);
}}
);