@Override public void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); Uri uri = ContentUris.withAppendedId(Cities.CONTENT_URI, id); Cursor c = getActivity().getContentResolver().query(uri, ADD_CITY_PROJECTION, null, null, null); try { c.moveToNext(); String timeZoneId = c.getString(c.getColumnIndex(Cities.TIMEZONE_ID)); String city = c.getString(c.getColumnIndex(Cities.NAME)); String country = c.getString(c.getColumnIndex(Cities.COUNTRY)); int timeDiff = TimeZoneInfo.getTimeDifference(DateTimeZone.forID(timeZoneId)); double latitude = c.getDouble(c.getColumnIndex(Cities.LATITUDE)); double longitude = c.getDouble(c.getColumnIndex(Cities.LONGITUDE)); WorldClock.Clocks.addClock(getActivity(), timeZoneId, city, country, timeDiff, latitude, longitude); returnResult(1); } finally { if (c != null) { c.close(); } } }