From ac558f3d7e5cc96a1c97d35430a676debbe1ff90 Mon Sep 17 00:00:00 2001 From: campbeb Date: Wed, 8 May 2013 23:59:41 -1000 Subject: Fix #2685 - Don't add images each time log entry is drawn on screen TextView with images was being added to the view each time the log entry was drawn. Instead of inflating and adding the TextView, we now use on that is arleady there and hide it if there are no images. --- main/res/layout/trackable_logs_img.xml | 16 ----------- main/res/layout/trackable_logs_item.xml | 16 +++++++++-- main/src/cgeo/geocaching/TrackableActivity.java | 35 ++++++++++--------------- 3 files changed, 28 insertions(+), 39 deletions(-) delete mode 100644 main/res/layout/trackable_logs_img.xml (limited to 'main') diff --git a/main/res/layout/trackable_logs_img.xml b/main/res/layout/trackable_logs_img.xml deleted file mode 100644 index aaed32b..0000000 --- a/main/res/layout/trackable_logs_img.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/main/res/layout/trackable_logs_item.xml b/main/res/layout/trackable_logs_item.xml index 52a38a9..65f3e16 100644 --- a/main/res/layout/trackable_logs_item.xml +++ b/main/res/layout/trackable_logs_item.xml @@ -20,6 +20,7 @@ android:textSize="18dip" /> + android:textSize="14sp" > + android:textSize="14sp" /> + + \ No newline at end of file diff --git a/main/src/cgeo/geocaching/TrackableActivity.java b/main/src/cgeo/geocaching/TrackableActivity.java index e5468f3..9b3dbfc 100644 --- a/main/src/cgeo/geocaching/TrackableActivity.java +++ b/main/src/cgeo/geocaching/TrackableActivity.java @@ -390,18 +390,18 @@ public class TrackableActivity extends AbstractViewPagerActivity 0) { holder.added.setText(Formatter.formatShortDate(log.date)); } @@ -454,7 +454,7 @@ public class TrackableActivity extends AbstractViewPagerActivity logImages = new ArrayList(log.getLogImages()); - - final View.OnClickListener listener = new View.OnClickListener() { + holder.images.setText(log.getImageTitles()); + holder.images.setVisibility(View.VISIBLE); + holder.images.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - ImagesActivity.startActivityLogImages(TrackableActivity.this, trackable.getGeocode(), logImages); + ImagesActivity.startActivityLogImages(TrackableActivity.this, trackable.getGeocode(), new ArrayList(log.getLogImages())); } - }; - - LinearLayout log_imgView = (LinearLayout) getLayoutInflater().inflate(R.layout.trackable_logs_img, null); - TextView log_img_title = (TextView) log_imgView.findViewById(R.id.title); - log_img_title.setText(log.getImageTitles()); - log_img_title.setOnClickListener(listener); - logLayout.addView(log_imgView); + }); + } else { + holder.images.setVisibility(View.GONE); } holder.author.setOnClickListener(new UserActionsListener()); -- cgit v1.1