aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching
diff options
context:
space:
mode:
authorrsudev <rsudev@googlemail.com>2013-06-25 11:46:15 +0200
committerrsudev <rsudev@googlemail.com>2013-06-25 11:46:15 +0200
commitcf999b7a4ff1d6e52a2aa5ff1636c269d199f124 (patch)
treee1e096205db83dff142fc785a6e6d500450c414c /main/src/cgeo/geocaching
parent7e271de2385ac1d2193d59f58e3d5e972d306f93 (diff)
downloadcgeo-cf999b7a4ff1d6e52a2aa5ff1636c269d199f124.zip
cgeo-cf999b7a4ff1d6e52a2aa5ff1636c269d199f124.tar.gz
cgeo-cf999b7a4ff1d6e52a2aa5ff1636c269d199f124.tar.bz2
Streamlined implementation of connector status info
Diffstat (limited to 'main/src/cgeo/geocaching')
-rw-r--r--main/src/cgeo/geocaching/MainActivity.java22
1 files changed, 7 insertions, 15 deletions
diff --git a/main/src/cgeo/geocaching/MainActivity.java b/main/src/cgeo/geocaching/MainActivity.java
index 1672dc1..5898cba 100644
--- a/main/src/cgeo/geocaching/MainActivity.java
+++ b/main/src/cgeo/geocaching/MainActivity.java
@@ -77,7 +77,6 @@ public class MainActivity extends AbstractActivity {
private List<Address> addresses = null;
private boolean addressObtaining = false;
private boolean initialized = false;
- private List<TextView> connectorInfos = new ArrayList<TextView>();
final private UpdateLocation locationUpdater = new UpdateLocation();
@@ -89,21 +88,15 @@ public class MainActivity extends AbstractActivity {
// Get active connectors with login status
ILogin[] loginConns = ConnectorFactory.getActiveLiveConnectors();
- // Adjust number of available connector info views
+ // Update UI
+ infoArea.removeAllViews();
LayoutInflater inflater = getLayoutInflater();
- while (loginConns.length > connectorInfos.size()) {
- TextView connectorInfo = (TextView) inflater.inflate(R.layout.main_activity_connectorstatus, null);
- connectorInfos.add(connectorInfo);
- infoArea.addView(connectorInfo, connectorInfos.size() - 1);
- }
- while (loginConns.length < connectorInfos.size()) {
- infoArea.removeViewAt(connectorInfos.size() - 1);
- connectorInfos.remove(connectorInfos.size() - 1);
- }
- // Update UI
- int index = 0;
for (ILogin conn : loginConns) {
+
+ TextView connectorInfo = (TextView) inflater.inflate(R.layout.main_activity_connectorstatus, null);
+ infoArea.addView(connectorInfo);
+
StringBuilder userInfo = new StringBuilder(conn.getName()).append(Formatter.SEPARATOR);
if (conn.isLoggedIn()) {
userInfo.append(conn.getUserName());
@@ -114,8 +107,7 @@ public class MainActivity extends AbstractActivity {
}
userInfo.append(conn.getLoginStatusString());
- connectorInfos.get(index).setText(userInfo.toString());
- index++;
+ connectorInfo.setText(userInfo);
}
}
};