728x90
https://github.com/react-native-community/react-native-svg
오늘 사용할 라이브러리!
- 내가 원하는 것: 화면 내에서 원하는 점과 점 사이를 선으로 긋고 싶다.
import React, {useEffect, useState, useRef} from 'react';
import {Svg, Line} from 'react-native-svg';
const AnimatedSvg = Animated.createAnimatedComponent(Svg);
const AnimatedLine = Animated.createAnimatedComponent(Line);
export default () => {
const initWidth = useRef(new Animated.Value(0)).current;
const initHeight = useRef(new Animated.Value(0)).current;
let animateWidth = initWidth.interpolate({
inputRange: [0, 100],
outputRange: ['0', '100'],
});
let animateHeight = initHeight.interpolate({
inputRange: [0, 100],
outputRange: ['0', '100'],
});
useEffect(() => {
Animated.timing(
// Animate over time
initWidth,
{
toValue: 100,
duration: 500,
useNativeDriver: true,
},
).start();
Animated.timing(
// Animate over time
initHeight,
{
toValue: 100,
duration: 500,
useNativeDriver: true,
},
).start();
}, []);
return (
<AnimatedSvg height="100" width="100">
<AnimatedLine
x1={0}
y1={0}
x2={animateWidth}
y2={animateHeight}
stroke="red"
strokeWidth="2"
/>
</AnimatedSvg>
)
}
- 결과물
- 이번에는 원하는 점과 점 사이를 그어보자
- 그러려면 내가 원하는 위치의 xy 포지션을 알아야겠지!
[출처]
https://stackoverflow.com/questions/53550173/how-do-i-draw-a-line-between-2-points-in-react-native
https://github.com/react-native-community/react-native-svg/issues/803
https://stackoverflow.com/questions/30096038/react-native-getting-the-position-of-an-element
이런 곳도 있다
https://github.com/kdeloach/react-lineto
Buy Me A Coffee!
https://www.buymeacoffee.com/daheeahn
'Develop > React Native' 카테고리의 다른 글
[React Native] react-native-gesture-handler 사용법 (2) | 2020.03.27 |
---|---|
[React Native] 코드푸시 & 테스트 플라이트 (0) | 2020.03.23 |
[React Native] 휴대폰/시뮬레이터 화면의 총 가로/세로 길이를 알아내는 법! => Dimensions (0) | 2020.03.19 |
[React Native] react-native-camera 카메라 띄우기, 사진 찍기, 사진 저장하는 법 (react-native-community) (12) | 2020.03.19 |
[React Native] 갤러리에서 사진 가져오기 (iOS) (8) | 2020.03.19 |