ultrasonic-app-subsonic-and.../ultrasonic/src/main/java/org/moire/ultrasonic/view/SongListAdapter.java

56 lines
1.3 KiB
Java
Raw Normal View History

2015-07-26 18:15:07 +02:00
package org.moire.ultrasonic.view;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
2015-07-26 18:15:07 +02:00
import org.moire.ultrasonic.domain.MusicDirectory;
import org.moire.ultrasonic.service.DownloadFile;
import java.util.List;
public class SongListAdapter extends ArrayAdapter<DownloadFile>
{
Context context;
public SongListAdapter(Context context, final List<DownloadFile> entries)
{
super(context, android.R.layout.simple_list_item_1, entries);
this.context = context;
}
@Override
public View getView(final int position, final View convertView, final ViewGroup parent)
{
DownloadFile downloadFile = getItem(position);
2021-10-13 20:59:28 +02:00
MusicDirectory.Entry entry = downloadFile.getSong();
SongView view;
2021-05-19 18:37:54 +02:00
if (convertView instanceof SongView)
{
SongView currentView = (SongView) convertView;
if (currentView.getEntry().equals(entry))
{
currentView.update();
return currentView;
}
else
{
EntryAdapter.SongViewHolder viewHolder = (EntryAdapter.SongViewHolder) convertView.getTag();
view = currentView;
view.setViewHolder(viewHolder);
}
}
else
{
view = new SongView(this.context);
view.setLayout(entry);
}
view.setSong(entry, false, true);
return view;
}
}