Prevent NPE in transport type
This commit is contained in:
parent
95499c39eb
commit
8551969bc9
3 changed files with 54 additions and 50 deletions
|
@ -778,7 +778,7 @@ public class MenuBuilder {
|
|||
TextView typeTextView = new TextView(view.getContext());
|
||||
LinearLayout.LayoutParams typeTextParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
|
||||
typeTextView.setLayoutParams(typeTextParams);
|
||||
typeTextView.setText(route.type.getTypeStrRes());
|
||||
typeTextView.setText(route.getTypeStrRes());
|
||||
typeView.addView(typeTextView);
|
||||
|
||||
baseView.setOnClickListener(listener);
|
||||
|
|
|
@ -55,16 +55,63 @@ public class TransportStopRoute {
|
|||
if (cachedColor == 0 || cachedNight != nightMode) {
|
||||
cachedColor = ctx.getResources().getColor(R.color.transport_route_line);
|
||||
cachedNight = nightMode;
|
||||
RenderingRulesStorage rrs = ctx.getRendererRegistry().getCurrentSelectedRenderer();
|
||||
RenderingRuleSearchRequest req = new RenderingRuleSearchRequest(rrs);
|
||||
req.setBooleanFilter(rrs.PROPS.R_NIGHT_MODE, nightMode);
|
||||
String typeStr = type.getRendeAttr();
|
||||
if (req.searchRenderingAttribute(typeStr)) {
|
||||
cachedColor = req.getIntPropertyValue(rrs.PROPS.R_ATTR_COLOR_VALUE);
|
||||
if (type != null) {
|
||||
RenderingRulesStorage rrs = ctx.getRendererRegistry().getCurrentSelectedRenderer();
|
||||
RenderingRuleSearchRequest req = new RenderingRuleSearchRequest(rrs);
|
||||
req.setBooleanFilter(rrs.PROPS.R_NIGHT_MODE, nightMode);
|
||||
String typeStr = type.getRendeAttr();
|
||||
if (req.searchRenderingAttribute(typeStr)) {
|
||||
cachedColor = req.getIntPropertyValue(rrs.PROPS.R_ATTR_COLOR_VALUE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return cachedColor;
|
||||
}
|
||||
|
||||
public int getTypeStrRes() {
|
||||
int typeResId = R.string.poi_filter_public_transport;
|
||||
if (type != null) {
|
||||
switch (type) {
|
||||
case BUS:
|
||||
typeResId = R.string.poi_route_bus_ref;
|
||||
break;
|
||||
case TRAM:
|
||||
typeResId = R.string.poi_route_tram_ref;
|
||||
break;
|
||||
case FERRY:
|
||||
typeResId = R.string.poi_route_ferry_ref;
|
||||
break;
|
||||
case TRAIN:
|
||||
typeResId = R.string.poi_route_train_ref;
|
||||
break;
|
||||
case SHARE_TAXI:
|
||||
typeResId = R.string.poi_route_share_taxi_ref;
|
||||
break;
|
||||
case FUNICULAR:
|
||||
typeResId = R.string.poi_route_funicular_ref;
|
||||
break;
|
||||
case LIGHT_RAIL:
|
||||
typeResId = R.string.poi_route_light_rail_ref;
|
||||
break;
|
||||
case MONORAIL:
|
||||
typeResId = R.string.poi_route_monorail_ref;
|
||||
break;
|
||||
case TROLLEYBUS:
|
||||
typeResId = R.string.poi_route_trolleybus_ref;
|
||||
break;
|
||||
case RAILWAY:
|
||||
typeResId = R.string.poi_route_railway_ref;
|
||||
break;
|
||||
case SUBWAY:
|
||||
typeResId = R.string.poi_route_subway_ref;
|
||||
break;
|
||||
default:
|
||||
typeResId = R.string.poi_filter_public_transport;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return typeResId;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -51,47 +51,4 @@ public enum TransportStopType {
|
|||
return null;
|
||||
}
|
||||
|
||||
public int getTypeStrRes() {
|
||||
int typeResId;
|
||||
switch (this) {
|
||||
case BUS:
|
||||
typeResId = R.string.poi_route_bus_ref;
|
||||
break;
|
||||
case TRAM:
|
||||
typeResId = R.string.poi_route_tram_ref;
|
||||
break;
|
||||
case FERRY:
|
||||
typeResId = R.string.poi_route_ferry_ref;
|
||||
break;
|
||||
case TRAIN:
|
||||
typeResId = R.string.poi_route_train_ref;
|
||||
break;
|
||||
case SHARE_TAXI:
|
||||
typeResId = R.string.poi_route_share_taxi_ref;
|
||||
break;
|
||||
case FUNICULAR:
|
||||
typeResId = R.string.poi_route_funicular_ref;
|
||||
break;
|
||||
case LIGHT_RAIL:
|
||||
typeResId = R.string.poi_route_light_rail_ref;
|
||||
break;
|
||||
case MONORAIL:
|
||||
typeResId = R.string.poi_route_monorail_ref;
|
||||
break;
|
||||
case TROLLEYBUS:
|
||||
typeResId = R.string.poi_route_trolleybus_ref;
|
||||
break;
|
||||
case RAILWAY:
|
||||
typeResId = R.string.poi_route_railway_ref;
|
||||
break;
|
||||
case SUBWAY:
|
||||
typeResId = R.string.poi_route_subway_ref;
|
||||
break;
|
||||
default:
|
||||
typeResId = R.string.poi_filter_public_transport;
|
||||
break;
|
||||
}
|
||||
return typeResId;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue