我有以下代码:
public class AlertViewOnMap extends Activity {
//declarations
ArrayList<String> dateCreatedAtList = new ArrayList<String>();
TextView busNumberTextView;
TextView descriptionTextView;
TextView alertTimeTextView;
DateFormat dateFormat = new SimpleDateFormat("HH:mm");
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.setContentView(com.fourbox.bocterapp.R.layout.details_design);
busNumberTextView = (TextView) findViewById(R.id.textViewAlertBusNumber);
descriptionTextView = (TextView) findViewById(R.id.textViewAlertDescription);
alertTimeTextView = (TextView) findViewById(R.id.textViewAlertTime);
busNumber = getIntent().getIntExtra("busNumber", 0);
description = getIntent().getStringExtra("description");
coordinatesLatitude = getIntent().getDoubleExtra("coordinatesLatitude", 0);
coordinatesLongitude = getIntent().getDoubleExtra("coordinatesLongitude", 0);
alertTime.setTime(getIntent().getLongExtra("createdAt", 0));
busNumberList = getIntent().getStringArrayListExtra("busNumberList");
descriptionList = getIntent().getStringArrayListExtra("descriptionList");
coordinatesLatitudeList = getIntent().getStringArrayListExtra("coordinatesLatitudeList");
coordinatesLongitudeList = getIntent().getStringArrayListExtra("coordinatesLongitudeList");
dateCreatedAtList = getIntent().getStringArrayListExtra("dateCreatedAtList");
GoogleMap mMap;
mMap = ((MapFragment) getFragmentManager().findFragmentById(com.fourbox.bocterapp.R.id.mapFragment)).getMap();
reuniteAlertListFromGetExtra();
placeAllMarkersOnMap(mMap, alertsList);
LatLng latLng = new LatLng(coordinatesLatitude, coordinatesLongitude);
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(latLng) // Center Set
.zoom(18.0f) // Zoom
.bearing(0) // Orientation of the camera to east
.tilt(30) // Tilt of the camera to 30 degrees
.build(); // Creates a CameraPosition from the builder
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
busNumberTextView.setText(String.valueOf(busNumber));
descriptionTextView.setText(description);
alertTimeTextView.setText(String.valueOf(dateFormat.format(alertTime)));
}
public void placeAllMarkersOnMap(GoogleMap mMap, ArrayList<Alert> alertsList) {
for(int i =0; i<alertsList.size(); i++) {
mMap.addMarker(new MarkerOptions()
.position(new LatLng(alertsList.get(i).getCoordinates().getLatitude(), alertsList.get(i).getCoordinates().getLongitude()))
.title(alertsList.get(i).getDescription())
.snippet(String.valueOf(alertsList.get(i).getBusNumber())
));
}
}
public void reuniteAlertListFromGetExtra() {
for (int i =0; i<busNumberList.size(); i++) {
Alert alert = new Alert();
ParseGeoPoint parseGeoPoint = new ParseGeoPoint();
parseGeoPoint.setLatitude(Double.valueOf(coordinatesLatitudeList.get(i)));
parseGeoPoint.setLongitude(Double.valueOf(coordinatesLongitudeList.get(i)));
alert.setBusNumber(Integer.valueOf(busNumberList.get(i)));
alert.setDescription(descriptionList.get(i));
alert.setCoordinates(parseGeoPoint);
alert.setCreatedAt(new Date(Long.valueOf(dateCreatedAtList.get(i))));
alertsList.add(alert);
}
}
public GoogleMap.OnMarkerClickListener getInfoMarkerClickListener() {
return new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
busNumberTextView.setText(marker.getSnippet());
descriptionTextView.setText(marker.getTitle());
alertTimeTextView.setText(dateCreatedAtList.get(marker.getId()));
marker.showInfoWindow();
return true;
}
};
}
}
我的问题是:我想添加自定义数据以存储在我的标记中,这样当我单击它时,“ alerTimeTextView”将从“
dateCreatedAtList”中获取标记的创建时间?
尝试这种方式,希望能帮助您解决问题。
定义一个以 Marker* 为键并以 Alert 为值的 HashMap ,并在创建新Marker时添加到地图上时,将该
Marker 作为键添加到HashMap中,并从 alertList中 添加相应的 Alert 数据,单击特定的
Marker 信息窗口时,从 HashMap中 获取特定的 Alert 数据。
*
public class AlertViewOnMap extends Activity {
//declarations
ArrayList<String> dateCreatedAtList = new ArrayList<String>();
TextView busNumberTextView;
TextView descriptionTextView;
TextView alertTimeTextView;
DateFormat dateFormat = new SimpleDateFormat("HH:mm");
private HashMap<Marker,Alert> markerDataMap;
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.setContentView(com.fourbox.bocterapp.R.layout.details_design);
busNumberTextView = (TextView) findViewById(R.id.textViewAlertBusNumber);
descriptionTextView = (TextView) findViewById(R.id.textViewAlertDescription);
alertTimeTextView = (TextView) findViewById(R.id.textViewAlertTime);
busNumber = getIntent().getIntExtra("busNumber", 0);
description = getIntent().getStringExtra("description");
coordinatesLatitude = getIntent().getDoubleExtra("coordinatesLatitude", 0);
coordinatesLongitude = getIntent().getDoubleExtra("coordinatesLongitude", 0);
alertTime.setTime(getIntent().getLongExtra("createdAt", 0));
busNumberList = getIntent().getStringArrayListExtra("busNumberList");
descriptionList = getIntent().getStringArrayListExtra("descriptionList");
coordinatesLatitudeList = getIntent().getStringArrayListExtra("coordinatesLatitudeList");
coordinatesLongitudeList = getIntent().getStringArrayListExtra("coordinatesLongitudeList");
dateCreatedAtList = getIntent().getStringArrayListExtra("dateCreatedAtList");
GoogleMap mMap;
mMap = ((MapFragment) getFragmentManager().findFragmentById(com.fourbox.bocterapp.R.id.mapFragment)).getMap();
reuniteAlertListFromGetExtra();
placeAllMarkersOnMap(mMap, alertsList);
LatLng latLng = new LatLng(coordinatesLatitude, coordinatesLongitude);
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(latLng) // Center Set
.zoom(18.0f) // Zoom
.bearing(0) // Orientation of the camera to east
.tilt(30) // Tilt of the camera to 30 degrees
.build(); // Creates a CameraPosition from the builder
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
busNumberTextView.setText(String.valueOf(busNumber));
descriptionTextView.setText(description);
alertTimeTextView.setText(String.valueOf(dateFormat.format(alertTime)));
}
public void placeAllMarkersOnMap(GoogleMap mMap, ArrayList<Alert> alertsList) {
markerDataMap = new HashMap<Marker, Alert>();
for(int i=0; i<alertsList.size(); i++) {
markerDataMap.put(mMap.addMarker(new MarkerOptions()
.position(new LatLng(alertsList.get(i).getCoordinates().getLatitude(), alertsList.get(i).getCoordinates().getLongitude()))
.title(alertsList.get(i).getDescription())
.snippet(String.valueOf(alertsList.get(i).getBusNumber())
)),alertsList.get(i));
}
}
public void reuniteAlertListFromGetExtra() {
for (int i =0; i<busNumberList.size(); i++) {
Alert alert = new Alert();
ParseGeoPoint parseGeoPoint = new ParseGeoPoint();
parseGeoPoint.setLatitude(Double.valueOf(coordinatesLatitudeList.get(i)));
parseGeoPoint.setLongitude(Double.valueOf(coordinatesLongitudeList.get(i)));
alert.setBusNumber(Integer.valueOf(busNumberList.get(i)));
alert.setDescription(descriptionList.get(i));
alert.setCoordinates(parseGeoPoint);
alert.setCreatedAt(new Date(Long.valueOf(dateCreatedAtList.get(i))));
alertsList.add(alert);
}
}
public GoogleMap.OnMarkerClickListener getInfoMarkerClickListener() {
return new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
Alert alert = markerDataMap.get(marker);
busNumberTextView.setText(alert.getDescription());
descriptionTextView.setText(alert.getBusNumber());
alertTimeTextView.setText(dateCreatedAtList.get(alert.getId()));
marker.showInfoWindow();
return true;
}
};
}
}
我想用自定义标记制作地图。在APIV2中,我可以为标记设置图标、标题等。但我想在一开始就显示带有标记的标题。现在标题显示只有当我磁带标记。在v1中是覆盖,但在v2中我没有发现任何类似的东西。 编辑:也许我说得不够清楚。API中类似的东西只对一个标记起作用。我无法同时显示所有标记的信息窗口。无论如何,我需要显示我的所有标记的标题,而不等待用户将点击它。
问题内容: 我正在尝试创建一种类似于英语的小型语言来指定任务。基本思想是将陈述分为动词和名词短语,这些动词应适用于它们。我正在使用nltk,但未获得我希望的结果,例如: 在每种情况下,它都未能意识到第一个单词(选择,移动和复制)被用作动词。我知道我可以创建自定义标签和语法来解决此问题,但是与此同时,当很多此类东西不在我的支持范围内时,我犹豫要重新发明轮子。我特别希望可以同时处理非英语语言的解决方案
我试图用Spring Cloud Stream创建一个kafka使用者,以便监听在任何Spring上下文之外构建的kafka消息,并使用自定义头(operationType)。 我使用的是Spring Boot 1.5.x/Spring Cloud egdware.sr5和1.1.1版本的kafka-client和Kafka2.11。 我的侦听器类包含此方法 而operationType标头是存在
定义和使用自定义标记可以吗?(这不会与将来的html标记冲突)-通过更改outerHTML替换/呈现这些标记?? 我在下面创建了一个演示,看起来效果不错 问题的最新情况: 让我进一步解释一下。请假设浏览器上启用了JavaScript-也就是说,应用程序不应该在没有javascript的情况下运行。 我见过使用自定义属性在指定标记中定义自定义行为的库。例如,角度。js大量使用自定义属性。(它还有关于
我有一个Spring Boot项目,我正在尝试在JSP文件中进行以下调用: tags文件夹位于- \src\main\resources\WEB-INF\tags JSP文件夹在- \s rc\main\资源\META-IN F\资源\WEB-IN F\jsp 我还将application.properties文件定义为包括: 如果我尝试将标签文件夹放在任何其他类路径中,Intellij会显示错误
我正在使用angularjs谷歌地图,我想自定义风格的信息,这是显示在一个标记点击。ui-gmap-window标记确实有自定义选项,它单独工作也很好。然而,当我试图在标记标记(ui-gmap-markers)中使用它时,它不会在标记点击上显示自定义样式的infoWindow。plunkr清楚地解释了这个问题。