No arquivo "styled.ts" dentro da pasta "Product", vamos criar alguns estilos novos para o "Product".
Primeiro, vamos criar o estilo "InfoContainer". Este container será utilizado para a exibição de informações adicionais do produto. Ele será disposto em linha e alinhará os itens no centro.
export const InfoContainer = styled.View`
flex-direction: row;
justify-content: space-between;
margin: 0 30px;
align-items: center;
`;
Agora, vamos criar o estilo "Price". Este estilo será utilizado para a exibição do preço do produto.
export const Price = styled.Text`
font-size: 24px;
font-weight: bold;
color: ${({ theme }) => theme.colors.primaryText};
`;
Em seguida, criamos o "InteractionsContainer". Este container será utilizado para a exibição das interações do usuário com o produto, como curtir e compartilhar.
export const InteractionsContainer = styled.View`
flex-direction: row;
align-items: center;
`;
Agora vamos criar o estilo para o botão.
export const Button = styled.TouchableOpacity``;
Vamos criar o estilo para o ícone de "Curtir".
export const Like = styled.Image.attrs({
resizeMode: "contain",
})`
width: 30px;
margin-right: 15px;
`;
Por fim, criaremos o estilo para o ícone de "Compartilhar".
export const Share = styled.Image.attrs({
resizeMode: "contain",
})`
width: 24px;
`;
Podemos agora utilizar esses estilos dentro do componente "Product". Eles serão aplicados para exibir informações adicionais do produto, preço e interações.
const like = require("../../../assets/icons/like.png");
const share = require("../../../assets/icons/share.png");
const Product = () => {
return (
<Container>
<BackArrow marginLeft={30} />
<Title>Playstation 4 com dois controles</Title>
<SubTitleContainer>
<SubTitle>Publicado em 10/05/23</SubTitle>
<SubTitle>Recife, PE</SubTitle>
</SubTitleContainer>
<Carousel images={images} />
<InfoContainer>
<Price>R$ 1800</Price>
<InteractionsContainer>
<Button activeOpacity={0.8}>
<Like source={require("../../../assets/coração-vazio.png")} />
</Button>
<Button activeOpacity={0.8}>
<Share source={require("../../../assets/compartilhar.png")} />
</Button>
</InteractionsContainer>
</InfoContainer>
</Container>
);
};
Com isso, finalizamos a criação dos estilos no arquivo "styled.ts" e a utilização desses estilos no componente "Product" no arquivo "index.tsx".