mirror of
https://github.com/status-im/react-native-linear-gradient.git
synced 2025-02-01 10:24:50 +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;
|
||||
|
||||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
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.SimpleViewManager;
|
||||
import com.facebook.react.uimanager.ThemedReactContext;
|
||||
import com.facebook.react.bridge.WritableArray;
|
||||
import com.facebook.react.bridge.WritableMap;
|
||||
import com.facebook.react.bridge.WritableNativeArray;
|
||||
import com.facebook.react.bridge.WritableNativeMap;
|
||||
|
||||
import android.view.View;
|
||||
|
||||
public class LinearGradientManager extends SimpleViewManager<LinearGradientView> {
|
||||
|
||||
@ -33,22 +26,22 @@ public class LinearGradientManager extends SimpleViewManager<LinearGradientView>
|
||||
}
|
||||
|
||||
@ReactProp(name=PROP_COLORS)
|
||||
public void setColors(LinearGradientView gradientView, ReadableArray colors){
|
||||
public void setColors(LinearGradientView gradientView, ReadableArray colors) {
|
||||
gradientView.setColors(colors);
|
||||
}
|
||||
|
||||
@ReactProp(name=PROP_LOCATIONS)
|
||||
public void setLocations(LinearGradientView gradientView, ReadableArray locations){
|
||||
public void setLocations(LinearGradientView gradientView, ReadableArray locations) {
|
||||
gradientView.setLocations(locations);
|
||||
}
|
||||
|
||||
@ReactProp(name=PROP_START_POS)
|
||||
public void setStartPosition(LinearGradientView gradientView, ReadableArray startPos){
|
||||
public void setStartPosition(LinearGradientView gradientView, ReadableArray startPos) {
|
||||
gradientView.setStartPosition(startPos);
|
||||
}
|
||||
|
||||
@ReactProp(name=PROP_END_POS)
|
||||
public void setEndPosition(LinearGradientView gradientView, ReadableArray endPos){
|
||||
public void setEndPosition(LinearGradientView gradientView, ReadableArray endPos) {
|
||||
gradientView.setEndPosition(endPos);
|
||||
}
|
||||
}
|
||||
|
@ -1,17 +1,14 @@
|
||||
package com.BV.LinearGradient;
|
||||
|
||||
import com.facebook.react.bridge.ReadableArray;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.LinearGradient;
|
||||
import android.graphics.Paint;
|
||||
import android.graphics.Shader;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
|
||||
import com.facebook.react.bridge.ReadableArray;
|
||||
import com.facebook.react.uimanager.CatalystStylesDiffMap;
|
||||
|
||||
|
||||
public class LinearGradientView extends View {
|
||||
|
||||
private Paint mPaint = new Paint();
|
||||
@ -27,31 +24,16 @@ public class LinearGradientView extends View {
|
||||
}
|
||||
|
||||
public void setStartPosition(ReadableArray startPos) {
|
||||
float[] _startPos;
|
||||
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;
|
||||
mStartPos = new float[]{(float) startPos.getDouble(0), (float) startPos.getDouble(1)};
|
||||
drawGradient();
|
||||
}
|
||||
|
||||
public void setEndPosition(ReadableArray endPos) {
|
||||
float[] _endPos;
|
||||
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;
|
||||
mEndPos = new float[]{(float) endPos.getDouble(0), (float) endPos.getDouble(1)};
|
||||
drawGradient();
|
||||
}
|
||||
|
||||
|
||||
public void setColors(ReadableArray colors){
|
||||
public void setColors(ReadableArray colors) {
|
||||
int[] _colors = new int[colors.size()];
|
||||
for (int i=0; i < _colors.length; i++)
|
||||
{
|
||||
@ -61,18 +43,12 @@ public class LinearGradientView extends View {
|
||||
drawGradient();
|
||||
}
|
||||
|
||||
public void setLocations(ReadableArray locations){
|
||||
float[] _locations;
|
||||
try {
|
||||
assert locations != null;
|
||||
_locations = new float[locations.size()];
|
||||
public void setLocations(ReadableArray locations) {
|
||||
float[] _locations = new float[locations.size()];
|
||||
for (int i=0; i < _locations.length; i++)
|
||||
{
|
||||
_locations[i] = (float) locations.getDouble(i);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
_locations = null;
|
||||
}
|
||||
mLocations = _locations;
|
||||
drawGradient();
|
||||
}
|
||||
@ -84,7 +60,14 @@ public class LinearGradientView extends View {
|
||||
}
|
||||
|
||||
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);
|
||||
invalidate();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user