forked from upstream-mirrors/OpenTracks
Add text shadow when displaying photo in marker detail page
This commit is contained in:
@@ -71,8 +71,8 @@ limitations under the License.
|
||||
android:paddingTop="8dp"
|
||||
style="@style/TextMedium" />
|
||||
<TextView
|
||||
android:paddingBottom="4dp"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="6dp"
|
||||
android:paddingTop="4dp"
|
||||
android:text="@string/marker_detail_statistics_title"
|
||||
style="@style/TextSmall" />
|
||||
<include layout="@layout/stats_content" />
|
||||
|
||||
@@ -29,7 +29,6 @@ limitations under the License.
|
||||
<color name="chart_speed_fill">#40C8E0FF</color> <!-- transparent blue -->
|
||||
<color name="holo_orange_dark">#FFFF8800</color>
|
||||
<color name="recording_text">#FFBE161B</color> <!-- red -->
|
||||
<color name="shadow_color">#B2000000</color> <!-- black 70% opacity -->
|
||||
<color name="stats_large_label">#FFFAAD2C</color> <!-- orange -->
|
||||
<color name="stats_separator">#99999999</color> <!-- light gray -->
|
||||
<color name="text_gradient_center">#B2000000</color> <!-- black 70% opacity -->
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.google.android.apps.mytracks.content.Waypoint.WaypointType;
|
||||
import com.google.android.apps.mytracks.util.CalorieUtils;
|
||||
import com.google.android.apps.mytracks.util.CalorieUtils.ActivityType;
|
||||
import com.google.android.apps.mytracks.util.IntentUtils;
|
||||
import com.google.android.apps.mytracks.util.ListItemUtils;
|
||||
import com.google.android.apps.mytracks.util.PhotoUtils;
|
||||
import com.google.android.apps.mytracks.util.StatsUtils;
|
||||
import com.google.android.apps.mytracks.util.StringUtils;
|
||||
@@ -247,21 +248,19 @@ public class MarkerDetailFragment extends Fragment {
|
||||
View waypointView = getView().findViewById(R.id.marker_detail_waypoint);
|
||||
View statisticsView = getView().findViewById(R.id.marker_detail_statistics);
|
||||
|
||||
if (waypoint.getType() == WaypointType.WAYPOINT) {
|
||||
waypointView.setVisibility(View.VISIBLE);
|
||||
statisticsView.setVisibility(View.GONE);
|
||||
boolean isWaypoint = waypoint.getType() == WaypointType.WAYPOINT;
|
||||
waypointView.setVisibility(isWaypoint ? View.VISIBLE : View.GONE);
|
||||
statisticsView.setVisibility(isWaypoint ? View.GONE : View.VISIBLE);
|
||||
|
||||
if (isWaypoint) {
|
||||
String photoUrl = waypoint.getPhotoUrl();
|
||||
if (photoUrl == null || photoUrl.equals("")) {
|
||||
photo.setVisibility(View.GONE);
|
||||
textGradient.setVisibility(View.GONE);
|
||||
waypointInfo.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
handler.removeCallbacks(hideText);
|
||||
photo.setVisibility(View.VISIBLE);
|
||||
textGradient.setVisibility(View.VISIBLE);
|
||||
waypointInfo.setVisibility(View.VISIBLE);
|
||||
boolean hasPhoto = photoUrl != null && !photoUrl.equals("");
|
||||
photo.setVisibility(hasPhoto ? View.VISIBLE : View.GONE);
|
||||
textGradient.setVisibility(hasPhoto ? View.VISIBLE : View.GONE);
|
||||
waypointInfo.setVisibility(View.VISIBLE);
|
||||
|
||||
if (hasPhoto) {
|
||||
handler.removeCallbacks(hideText);
|
||||
Display defaultDisplay = getActivity().getWindowManager().getDefaultDisplay();
|
||||
PhotoUtils.setImageVew(photo, Uri.parse(photoUrl), defaultDisplay.getWidth(),
|
||||
defaultDisplay.getHeight(), true);
|
||||
@@ -269,20 +268,18 @@ public class MarkerDetailFragment extends Fragment {
|
||||
}
|
||||
|
||||
TextView name = (TextView) getView().findViewById(R.id.marker_detail_waypoint_name);
|
||||
setTextView(name, waypoint.getName());
|
||||
ListItemUtils.setTextView(getActivity(), name, waypoint.getName(), hasPhoto);
|
||||
|
||||
TextView category = (TextView) getView().findViewById(R.id.marker_detail_waypoint_category);
|
||||
setTextView(category, StringUtils.getCategory(waypoint.getCategory()));
|
||||
ListItemUtils.setTextView(
|
||||
getActivity(), category, StringUtils.getCategory(waypoint.getCategory()), hasPhoto);
|
||||
|
||||
TextView description = (TextView) getView()
|
||||
.findViewById(R.id.marker_detail_waypoint_description);
|
||||
setTextView(description, waypoint.getDescription());
|
||||
ListItemUtils.setTextView(getActivity(), description, waypoint.getDescription(), hasPhoto);
|
||||
} else {
|
||||
waypointView.setVisibility(View.GONE);
|
||||
statisticsView.setVisibility(View.VISIBLE);
|
||||
|
||||
TextView name = (TextView) getView().findViewById(R.id.marker_detail_statistics_name);
|
||||
setTextView(name, waypoint.getName());
|
||||
ListItemUtils.setTextView(getActivity(), name, waypoint.getName(), false);
|
||||
|
||||
Track track = myTracksProviderUtils.getTrack(waypoint.getTrackId());
|
||||
ActivityType activityType = track != null ? CalorieUtils.getActivityType(
|
||||
@@ -293,19 +290,4 @@ public class MarkerDetailFragment extends Fragment {
|
||||
StatsUtils.setLocationValues(getActivity(), null, getView(), waypoint.getLocation(), false);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets a text view.
|
||||
*
|
||||
* @param textView the text view
|
||||
* @param value the value for the text view
|
||||
*/
|
||||
private void setTextView(TextView textView, String value) {
|
||||
if (value == null || value.length() == 0) {
|
||||
textView.setVisibility(View.GONE);
|
||||
} else {
|
||||
textView.setVisibility(View.VISIBLE);
|
||||
textView.setText(value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -222,7 +222,7 @@ public class ListItemUtils {
|
||||
* @param value the value for the text view
|
||||
* @param addShadow true to add shadow
|
||||
*/
|
||||
private static void setTextView(
|
||||
public static void setTextView(
|
||||
Context context, TextView textView, String value, boolean addShadow) {
|
||||
if (value == null || value.length() == 0) {
|
||||
textView.setVisibility(View.GONE);
|
||||
@@ -230,7 +230,7 @@ public class ListItemUtils {
|
||||
textView.setVisibility(View.VISIBLE);
|
||||
textView.setText(value);
|
||||
if (addShadow) {
|
||||
textView.setShadowLayer(8, 0, 10, context.getResources().getColor(R.color.shadow_color));
|
||||
textView.setShadowLayer(5, 0, 2, context.getResources().getColor(android.R.color.black));
|
||||
} else {
|
||||
textView.setShadowLayer(0, 0, 0, 0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user