mirror of
https://github.com/status-im/react-native-linear-gradient.git
synced 2025-02-08 05:45:34 +00:00
do not suppress prop errors on Android
This commit is contained in:
parent
c41e14aa47
commit
d5961d4cdf
@ -1,18 +1,11 @@
|
|||||||
package com.BV.LinearGradient;
|
package com.BV.LinearGradient;
|
||||||
|
|
||||||
import android.view.View;
|
|
||||||
import android.widget.FrameLayout;
|
|
||||||
|
|
||||||
import com.facebook.react.bridge.ReadableArray;
|
import com.facebook.react.bridge.ReadableArray;
|
||||||
import com.facebook.react.uimanager.BaseViewPropertyApplicator;
|
|
||||||
import com.facebook.react.uimanager.CatalystStylesDiffMap;
|
|
||||||
import com.facebook.react.uimanager.ReactProp;
|
import com.facebook.react.uimanager.ReactProp;
|
||||||
import com.facebook.react.uimanager.SimpleViewManager;
|
import com.facebook.react.uimanager.SimpleViewManager;
|
||||||
import com.facebook.react.uimanager.ThemedReactContext;
|
import com.facebook.react.uimanager.ThemedReactContext;
|
||||||
import com.facebook.react.bridge.WritableArray;
|
|
||||||
import com.facebook.react.bridge.WritableMap;
|
import android.view.View;
|
||||||
import com.facebook.react.bridge.WritableNativeArray;
|
|
||||||
import com.facebook.react.bridge.WritableNativeMap;
|
|
||||||
|
|
||||||
public class LinearGradientManager extends SimpleViewManager<LinearGradientView> {
|
public class LinearGradientManager extends SimpleViewManager<LinearGradientView> {
|
||||||
|
|
||||||
|
@ -1,17 +1,14 @@
|
|||||||
package com.BV.LinearGradient;
|
package com.BV.LinearGradient;
|
||||||
|
|
||||||
|
import com.facebook.react.bridge.ReadableArray;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Canvas;
|
import android.graphics.Canvas;
|
||||||
import android.graphics.LinearGradient;
|
import android.graphics.LinearGradient;
|
||||||
import android.graphics.Paint;
|
import android.graphics.Paint;
|
||||||
import android.graphics.Shader;
|
import android.graphics.Shader;
|
||||||
import android.util.Log;
|
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
import com.facebook.react.bridge.ReadableArray;
|
|
||||||
import com.facebook.react.uimanager.CatalystStylesDiffMap;
|
|
||||||
|
|
||||||
|
|
||||||
public class LinearGradientView extends View {
|
public class LinearGradientView extends View {
|
||||||
|
|
||||||
private Paint mPaint = new Paint();
|
private Paint mPaint = new Paint();
|
||||||
@ -27,30 +24,15 @@ public class LinearGradientView extends View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setStartPosition(ReadableArray startPos) {
|
public void setStartPosition(ReadableArray startPos) {
|
||||||
float[] _startPos;
|
mStartPos = new float[]{(float) startPos.getDouble(0), (float) startPos.getDouble(1)};
|
||||||
try {
|
|
||||||
assert startPos != null;
|
|
||||||
_startPos= new float[]{(float) startPos.getDouble(0), (float) startPos.getDouble(1)};
|
|
||||||
} catch (Exception e) {
|
|
||||||
_startPos = new float[]{0, 0};
|
|
||||||
}
|
|
||||||
mStartPos = _startPos;
|
|
||||||
drawGradient();
|
drawGradient();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setEndPosition(ReadableArray endPos) {
|
public void setEndPosition(ReadableArray endPos) {
|
||||||
float[] _endPos;
|
mEndPos = new float[]{(float) endPos.getDouble(0), (float) endPos.getDouble(1)};
|
||||||
try {
|
|
||||||
assert endPos != null;
|
|
||||||
_endPos= new float[]{(float) endPos.getDouble(0), (float) endPos.getDouble(1)};
|
|
||||||
} catch (Exception e) {
|
|
||||||
_endPos = new float[]{0, 0};
|
|
||||||
}
|
|
||||||
mEndPos = _endPos;
|
|
||||||
drawGradient();
|
drawGradient();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void setColors(ReadableArray colors) {
|
public void setColors(ReadableArray colors) {
|
||||||
int[] _colors = new int[colors.size()];
|
int[] _colors = new int[colors.size()];
|
||||||
for (int i=0; i < _colors.length; i++)
|
for (int i=0; i < _colors.length; i++)
|
||||||
@ -62,17 +44,11 @@ public class LinearGradientView extends View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setLocations(ReadableArray locations) {
|
public void setLocations(ReadableArray locations) {
|
||||||
float[] _locations;
|
float[] _locations = new float[locations.size()];
|
||||||
try {
|
|
||||||
assert locations != null;
|
|
||||||
_locations = new float[locations.size()];
|
|
||||||
for (int i=0; i < _locations.length; i++)
|
for (int i=0; i < _locations.length; i++)
|
||||||
{
|
{
|
||||||
_locations[i] = (float) locations.getDouble(i);
|
_locations[i] = (float) locations.getDouble(i);
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
|
||||||
_locations = null;
|
|
||||||
}
|
|
||||||
mLocations = _locations;
|
mLocations = _locations;
|
||||||
drawGradient();
|
drawGradient();
|
||||||
}
|
}
|
||||||
@ -84,7 +60,14 @@ public class LinearGradientView extends View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void drawGradient() {
|
private void drawGradient() {
|
||||||
mShader = new LinearGradient(mStartPos[0] * mSize[0], mStartPos[1] * mSize[1], mEndPos[0] * mSize[0], mEndPos[1] * mSize[1], mColors, mLocations, Shader.TileMode.MIRROR);
|
mShader = new LinearGradient(
|
||||||
|
mStartPos[0] * mSize[0],
|
||||||
|
mStartPos[1] * mSize[1],
|
||||||
|
mEndPos[0] * mSize[0],
|
||||||
|
mEndPos[1] * mSize[1],
|
||||||
|
mColors,
|
||||||
|
mLocations,
|
||||||
|
Shader.TileMode.MIRROR);
|
||||||
mPaint.setShader(mShader);
|
mPaint.setShader(mShader);
|
||||||
invalidate();
|
invalidate();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user