本文整理汇总了Java中com.google.samples.apps.iosched.util.MapUtils.createLabelMarker方法的典型用法代码示例。如果您正苦于以下问题:Java MapUtils.createLabelMarker方法的具体用法?Java MapUtils.createLabelMarker怎么用?Java MapUtils.createLabelMarker使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.google.samples.apps.iosched.util.MapUtils
的用法示例。
在下文中一共展示了MapUtils.createLabelMarker方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: loadInBackground
import com.google.samples.apps.iosched.util.MapUtils; //导入方法依赖的package包/类
@Override
public List<MarkerEntry> loadInBackground() {
List<MarkerEntry> list = null;
// Create a URI to get a cursor of all map markers
final Uri uri = ScheduleContract.MapMarkers.buildMarkerUri();
Cursor cursor = getContext().getContentResolver().query(uri, MarkerQuery.PROJECTION,
null, null, null);
// Create a MarkerModel for each entry
final int count = cursor.getCount();
if (cursor != null) {
list = new ArrayList<>(count);
final IconGenerator labelIconGenerator = MapUtils.getLabelIconGenerator(getContext());
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
// get data
final String id = cursor.getString(MarkerQuery.MARKER_ID);
final int floor = cursor.getInt(MarkerQuery.MARKER_FLOOR);
final float lat = cursor.getFloat(MarkerQuery.MARKER_LATITUDE);
final float lon = cursor.getFloat(MarkerQuery.MARKER_LONGITUDE);
final int type =
MapUtils.detectMarkerType(cursor.getString(MarkerQuery.MARKER_TYPE));
final String label = cursor.getString(MarkerQuery.MARKER_LABEL);
final LatLng position = new LatLng(lat, lon);
MarkerOptions marker = null;
if (type == MarkerModel.TYPE_LABEL) {
// Label markers contain the label as its icon
marker = MapUtils.createLabelMarker(labelIconGenerator, id, position, label);
} else if (type != MarkerModel.TYPE_INACTIVE) {
// All other markers (that are not inactive) contain a pin icon
marker = MapUtils.createPinMarker(id, position);
}
MarkerModel model = new MarkerModel(id, floor, type, label, null);
MarkerEntry entry = new MarkerEntry(model, marker);
list.add(entry);
cursor.moveToNext();
}
cursor.close();
}
return list;
}
示例2: onMarkerLoaderComplete
import com.google.samples.apps.iosched.util.MapUtils; //导入方法依赖的package包/类
private void onMarkerLoaderComplete(Cursor cursor) {
if (cursor != null && cursor.getCount() > 0) {
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
// get data
final String id = cursor.getString(MarkerQuery.MARKER_ID);
final int floor = cursor.getInt(MarkerQuery.MARKER_FLOOR);
final float lat = cursor.getFloat(MarkerQuery.MARKER_LATITUDE);
final float lon = cursor.getFloat(MarkerQuery.MARKER_LONGITUDE);
final String type = cursor.getString(MarkerQuery.MARKER_TYPE);
final String label = cursor.getString(MarkerQuery.MARKER_LABEL);
final LatLng position = new LatLng(lat, lon);
MarkerOptions marker = null;
if (TYPE_SESSION.equals(type) || TYPE_PLAIN_SESSION.equals(type)) {
marker = MapUtils.createSessionMarker(id, type, position);
} else if (TYPE_PARTNER.equals(type)) {
marker = MapUtils.createPartnerMarker(id, position);
} else if (TYPE_LABEL.equals(type)) {
marker = MapUtils.createLabelMarker(mIconGenerator, id, position, label);
}
// add marker to map
if (marker != null) {
Marker m = mMap.addMarker(marker);
MarkerModel model = new MarkerModel(id, floor, type, label, m);
ArrayList<Marker> markerList = mMarkersFloor.get(floor);
if (markerList == null) {
// Initialise the list of Markers for this floor
markerList = new ArrayList<Marker>();
mMarkersFloor.put(floor, markerList);
}
markerList.add(m);
mMarkers.put(id, model);
}
cursor.moveToNext();
}
// no more markers to load
mMarkersLoaded = true;
enableMapElements();
}
}