1
0
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
GuiaTV/src/org/r3pek/guiatv/ChannelsSimpleAdapter.java

48 lines
1.6 KiB

package org.r3pek.guiatv;
import java.util.List;
import java.util.Map;
import android.content.Context;
import android.graphics.Color;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
public class ChannelsSimpleAdapter extends SimpleAdapter {
private ChannelList channels;
private Context context;
public ChannelsSimpleAdapter(Context context, List<? extends Map<String, ?>> data, int resource, String[] from, int[] to, ChannelList channels) {
super(context, data, resource, from, to);
this.context= context;
this.channels = channels;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = super.getView(position, convertView, parent);
ImageView ivIcon = (ImageView) v.findViewById(R.id.ivIcon);
TextView tvName = (TextView) v.findViewById(R.id.tvNome);
String channel = channels.getChannels().get(channels.namePos(tvName.getText().toString())).getSigla();
channel = channel.replaceAll(" ", "_").replaceAll("-", "_").replaceAll("\\+", "_").replaceAll("!", "_").replaceAll("&", "_");
channel = channel.toLowerCase();
if (channel.charAt(0) >= '0' && channel.charAt(0) <= '9')
channel = "a" + channel;
int res = context.getResources().getIdentifier(channel, "drawable", "org.r3pek.guiatv");
if (res > 0) {
ivIcon.setImageResource(res);
ivIcon.setBackgroundColor(Color.WHITE);
} else {
ivIcon.setImageResource(R.drawable.none);
ivIcon.setBackgroundDrawable(null);
}
return v;
}
}