marks grid has item decoration (border)

This commit is contained in:
Peter Siegmund committed 2015-10-15 16:56:28 +02:00
1 parent c7209712ae
commit f5b26ae875
6 files changed
+80 -29

No files matched your search

@@ -13,12 +13,19 @@
android:orientation="horizontal"
tools:ignore="UseCompoundDrawables">
<ImageView
<RelativeLayout
android:id="@id/drag_handle"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/dragster"
android:contentDescription="@string/drag_handle_description"/>
android:layout_width="42dp"
android:layout_height="42dp"
android:layout_gravity="center_vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/dragster"
android:contentDescription="@string/drag_handle_description"/>
</RelativeLayout>
<TextView
android:id="@+id/position"
@@ -21,7 +21,8 @@
android:layout_alignParentTop="true"
android:layout_marginLeft="@dimen/default_margin"
android:layout_marginRight="@dimen/default_margin"
android:orientation="horizontal">
android:orientation="horizontal"
android:paddingTop="@dimen/side_padding">
<TextView
android:layout_width="0dp"
@@ -59,10 +60,10 @@
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="horizontal"
android:paddingBottom="@dimen/default_padding_half"
android:paddingLeft="@dimen/default_padding"
android:paddingRight="@dimen/default_padding"
android:paddingTop="@dimen/default_padding">
android:paddingBottom="@dimen/side_padding"
android:paddingLeft="@dimen/side_padding"
android:paddingRight="@dimen/side_padding"
android:paddingTop="@dimen/side_padding">
<Button
android:id="@+id/publishCourse"
@@ -96,7 +97,8 @@
android:layout_marginLeft="@dimen/default_margin"
android:layout_marginRight="@dimen/default_margin"
android:gravity="center"
android:orientation="horizontal">
android:orientation="horizontal"
android:paddingTop="@dimen/side_padding">
<android.support.v7.widget.RecyclerView
android:id="@+id/previous_course"
@@ -52,6 +52,8 @@ import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseMarkAdap
import com.sap.sailing.racecommittee.app.ui.adapters.coursedesign.CourseMarkAdapter.MarkClick;
import com.sap.sailing.racecommittee.app.ui.comparators.NaturalNamedComparator;
import com.sap.sailing.racecommittee.app.ui.utils.ESSMarkImageHelper;
import com.sap.sailing.racecommittee.app.ui.views.decoration.ItemStrokeDecoration;
import com.sap.sailing.racecommittee.app.utils.ThemeHelper;
import com.sap.sse.common.Util;
import com.sap.sse.common.impl.MillisecondsTimePoint;
@@ -157,6 +159,9 @@ public class CourseFragmentMarks extends CourseFragment implements MarkClick, El
if (mMarkGrid != null) {
GridLayoutManager layoutManager = new GridLayoutManager(getActivity(), 3);
mMarkGrid.setLayoutManager(layoutManager);
mMarkGrid
.addItemDecoration(new ItemStrokeDecoration(getActivity().getResources().getDimensionPixelSize(R.dimen.obesity_line), getActivity()
.getResources().getDimensionPixelSize(R.dimen.thin_line), ThemeHelper.getColor(getActivity(), R.attr.sap_light_gray)));
mMarkAdapter = new CourseMarkAdapter(getActivity(), mMarks, ESSMarkImageHelper.getInstance(getActivity()));
mMarkAdapter.setListener(this);
@@ -1,5 +1,12 @@
package com.sap.sailing.racecommittee.app.ui.fragments.raceinfo;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
@@ -15,24 +22,18 @@ import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
import com.sap.sailing.android.shared.logging.ExLog;
import com.sap.sailing.android.shared.util.ViewHelper;
import com.sap.sailing.racecommittee.app.AppPreferences;
import com.sap.sailing.racecommittee.app.R;
import com.sap.sailing.racecommittee.app.ui.adapters.PhotoListAdapter;
import com.sap.sailing.racecommittee.app.ui.views.decoration.PhotoListItemDecoration;
import com.sap.sailing.racecommittee.app.ui.views.decoration.PaddingItemDecoration;
import com.sap.sailing.racecommittee.app.utils.CameraHelper;
import com.sap.sailing.racecommittee.app.utils.MailHelper;
import com.sap.sailing.racecommittee.app.utils.RaceHelper;
import com.sap.sailing.racecommittee.app.utils.StringHelper;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class PhotoListFragment extends BaseFragment {
private final static String TAG = PhotoListFragment.class.getName();
@@ -85,7 +86,7 @@ public class PhotoListFragment extends BaseFragment {
LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity());
layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
mPhotoList.setLayoutManager(layoutManager);
mPhotoList.addItemDecoration(new PhotoListItemDecoration(getResources().getDimensionPixelOffset(R.dimen.side_padding)));
mPhotoList.addItemDecoration(new PaddingItemDecoration(getResources().getDimensionPixelOffset(R.dimen.side_padding)));
}
mSubmit = ViewHelper.get(layout, R.id.submit_button);
@@ -119,13 +120,13 @@ public class PhotoListFragment extends BaseFragment {
}
switch (requestCode) {
case PHOTO_SHOOTING:
refreshPhotoList();
ExLog.i(getActivity(), TAG, "Returned from Photo");
break;
case PHOTO_SHOOTING:
refreshPhotoList();
ExLog.i(getActivity(), TAG, "Returned from Photo");
break;
default:
break;
default:
break;
}
}
@@ -0,0 +1,36 @@
package com.sap.sailing.racecommittee.app.ui.views.decoration;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.support.v7.widget.RecyclerView;
import android.view.View;
public class ItemStrokeDecoration extends PaddingItemDecoration {
private Paint mLinePaint;
public ItemStrokeDecoration(int padding, float strokeWidth, int color) {
super(padding);
mLinePaint = new Paint();
mLinePaint.setStrokeWidth(strokeWidth);
mLinePaint.setColor(color);
mLinePaint.setAntiAlias(true);
mLinePaint.setStyle(Paint.Style.STROKE);
}
@Override
public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) {
super.onDraw(c, parent, state);
final RecyclerView.LayoutManager layoutManager = parent.getLayoutManager();
for (int i = 0; i < parent.getChildCount(); i++) {
final View child = parent.getChildAt(i);
c.drawRect(
layoutManager.getDecoratedLeft(child) + mPadding,
layoutManager.getDecoratedTop(child) + mPadding,
layoutManager.getDecoratedRight(child) - mPadding, layoutManager.getDecoratedBottom(child) - mPadding, mLinePaint);
}
}
}
@@ -4,11 +4,11 @@ import android.graphics.Rect;
import android.support.v7.widget.RecyclerView;
import android.view.View;
public class PhotoListItemDecoration extends RecyclerView.ItemDecoration {
public class PaddingItemDecoration extends RecyclerView.ItemDecoration {
private int mPadding;
protected int mPadding;
public PhotoListItemDecoration(int padding) {
public PaddingItemDecoration(int padding) {
mPadding = padding;
}