01.
public
class
RssReaderListAdapter
extends
ArrayAdapter<RssFeedStructure> {
02.
List<RssFeedStructure> imageAndTexts1 =
null
;
03.
04.
public
RssReaderListAdapter(Activity activity,
05.
List<RssFeedStructure> imageAndTexts) {
06.
super
(activity,
0
, imageAndTexts);
07.
imageAndTexts1 = imageAndTexts;
08.
09.
10.
if
(android.os.Build.VERSION.SDK_INT >
9
) {
11.
StrictMode.ThreadPolicy policy =
new
StrictMode.ThreadPolicy.Builder().permitAll().build();
12.
StrictMode.setThreadPolicy(policy);
13.
}
14.
}
15.
16.
@Override
17.
public
View getView(
int
position, View convertView, ViewGroup parent) {
18.
19.
Activity activity = (Activity) getContext();
20.
LayoutInflater inflater = activity.getLayoutInflater();
21.
22.
View rowView = inflater.inflate(R.layout.rssfeedadapter_layout,
null
);
23.
TextView textView = (TextView) rowView.findViewById(R.id.feed_text);
24.
TextView timeFeedText = (TextView) rowView
25.
.findViewById(R.id.feed_updatetime);
26.
ImageView imageView = (ImageView) rowView.findViewById(R.id.feed_image);
27.
try
{
28.
29.
Log.d(
"rssfeed"
,
"imageAndTexts1.get(position).getImgLink() :: "
30.
+ imageAndTexts1.get(position).getImgLink() +
" :: "
31.
+ imageAndTexts1.get(position).getTitle()+
" :: "
32.
+ imageAndTexts1.get(position).getUrl());
33.
textView.setText(imageAndTexts1.get(position).getTitle());
34.
SpannableString content =
new
SpannableString(imageAndTexts1.get(
35.
position).getPubDate());
36.
content.setSpan(
new
UnderlineSpan(),
0
,
13
,
0
);
37.
38.
timeFeedText.setText(content);
39.
40.
41.
imageAndTexts1.setOnItemClickListener(
new
OnItemClickListener() {
42.
public
void
onItemClick(AdapterView<?> myAdapter, View myView,
int
position,
long
mylng) {
43.
44.
Toast.makeText(getApplicationContext(), imageAndTexts1.get(position).getUrl(), Toast.LENGTH_SHORT).show();
45.
46.
}
47.
});
48.
49.
if
(imageAndTexts1.get(position).getImgLink() !=
null
) {
50.
51.
URL feedImage =
new
URL(imageAndTexts1.get(position)
52.
.getImgLink().toString());
53.
if
(!feedImage.toString().equalsIgnoreCase(
"null"
)) {
54.
HttpURLConnection conn = (HttpURLConnection) feedImage
55.
.openConnection();
56.
InputStream is = conn.getInputStream();
57.
58.
imageView.setLayoutParams(
new
LinearLayout.LayoutParams(
200
,
200
));
59.
Bitmap img = BitmapFactory.decodeStream(is);
60.
61.
imageView.setImageBitmap(img);
62.
}
else
{
63.
64.
imageView.setBackgroundResource(R.drawable.im);
65.
}
66.
}
67.
68.
}
catch
(MalformedURLException e) {
69.
70.
}
catch
(IOException e) {
71.
72.
}
73.
74.
return
rowView;
75.
76.
}