Skip to content

Commit 0b47e4b

Browse files
authored
Merge pull request #25 from starkej2/feature/line-configuration
Add setter for line stroke and path effect
2 parents 47c7bbf + 3bf7ded commit 0b47e4b

1 file changed

Lines changed: 20 additions & 8 deletions

File tree

Spotlight-library/src/main/java/com/wooplr/spotlight/SpotlightView.java

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import android.graphics.Canvas;
99
import android.graphics.Color;
1010
import android.graphics.Paint;
11+
import android.graphics.PathEffect;
1112
import android.graphics.PorterDuff;
1213
import android.graphics.PorterDuffColorFilter;
1314
import android.graphics.PorterDuffXfermode;
@@ -16,6 +17,7 @@
1617
import android.os.Build;
1718
import android.os.Handler;
1819
import android.os.Looper;
20+
import android.support.annotation.Nullable;
1921
import android.support.graphics.drawable.AnimatedVectorDrawableCompat;
2022
import android.support.v4.content.ContextCompat;
2123
import android.support.v7.widget.AppCompatImageView;
@@ -172,7 +174,7 @@ public class SpotlightView extends FrameLayout {
172174
*/
173175
private long lineAnimationDuration = 300;
174176
private int lineStroke;
175-
177+
private PathEffect lineEffect;
176178
private int lineAndArcColor = Color.parseColor("#eb273f");
177179

178180

@@ -578,6 +580,7 @@ private void addPathAnimation(Activity activity) {
578580
p.setStrokeCap(Paint.Cap.ROUND);
579581
p.setStrokeWidth(lineStroke);
580582
p.setColor(lineAndArcColor);
583+
p.setPathEffect(lineEffect);
581584

582585
NormalLineAnimDrawable animDrawable1 = new NormalLineAnimDrawable(p);
583586
if (lineAnimationDuration > 0)
@@ -893,9 +896,13 @@ public void setLineAndArcColor(int lineAndArcColor) {
893896
this.lineAndArcColor = lineAndArcColor;
894897
}
895898

896-
// public void setLineStroke(int lineStroke) {
897-
// this.lineStroke = lineStroke;
898-
// }
899+
public void setLineStroke(int lineStroke) {
900+
this.lineStroke = lineStroke;
901+
}
902+
903+
public void setLineEffect(PathEffect pathEffect) {
904+
this.lineEffect = pathEffect;
905+
}
899906

900907
public void setTypeface(Typeface typeface) {
901908
this.mTypeface = typeface;
@@ -1054,10 +1061,15 @@ public Builder enableDismissAfterShown(boolean enable) {
10541061
return this;
10551062
}
10561063

1057-
// public Builder lineStroke(int stoke) {
1058-
// spotlightView.setLineStroke(Utils.dpToPx(stoke));
1059-
// return this;
1060-
// }
1064+
public Builder lineStroke(int stroke) {
1065+
spotlightView.setLineStroke(Utils.dpToPx(stroke));
1066+
return this;
1067+
}
1068+
1069+
public Builder lineEffect(@Nullable PathEffect pathEffect) {
1070+
spotlightView.setLineEffect(pathEffect);
1071+
return this;
1072+
}
10611073

10621074
public Builder setConfiguration(SpotlightConfig configuration) {
10631075
spotlightView.setConfiguration(configuration);

0 commit comments

Comments
 (0)