ViewOverlayLib é uma biblioteca leve e flexível que permite a criação e gerenciamento de sobreposições de interface de usuário (UI) em projetos .NET MAUI. Com componentes simples, como o CardInteractionOverlay, você pode facilmente controlar interações e bloquear toques em cards e outros elementos visuais. Ideal para cenários onde você precisa proteger partes da UI enquanto realiza tarefas em segundo plano ou destaca seções específicas da tela. Funcionalidades: * Sobreposições interativas: Adicione camadas de bloqueio sobre qualquer elemento de UI. * Controle de interações: Bloqueie ou permita interações com base nas necessidades da aplicação. * Fácil integração: Use bindables e eventos para integrar as sobreposições de maneira fluida no seu projeto. * Componentes flexíveis: Com suporte para diferentes layouts e personalizações. Essa biblioteca é ideal para desenvolvedores que procuram uma maneira simples de gerenciar interações em apps .NET MAUI, proporcionando uma experiência de usuário mais dinâmica e controlada.
$ dotnet add package ViewOverlayLibViewOverlayLib é uma biblioteca leve e flexível que permite adicionar e gerenciar sobreposições de interface de usuário (UI) em projetos .NET MAUI. Ela facilita o controle de interações em cards ou outros elementos visuais, com componentes personalizáveis e fáceis de integrar.
BindableProperty e eventos.Você pode instalar o pacote ViewOverlayLib via NuGet Package Manager ou .NET CLI.
Install-Package ViewOverlayLib
dotnet add package ViewOverlayLib
Aqui está um exemplo básico de como usar o componente CardInteractionOverlay em um projeto .NET MAUI.
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:overlay="clr-namespace:ViewOverlayLib"
x:Class="YourProject.MainPage">
<Grid>
<!-- Card Content -->
<Frame CornerRadius="10" Padding="10" BackgroundColor="LightGray" HasShadow="True">
<StackLayout>
<Label Text="Título do Card" FontAttributes="Bold" />
<Entry Placeholder="Digite algo aqui" />
</StackLayout>
</Frame>
<!-- CardInteractionOverlay Sobrepondo o Card -->
<overlay:CardInteractionOverlay IsBlocked="{Binding IsBlocked}" CardTapped="OnCardTapped" />
</Grid>
</ContentPage>
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
BindingContext = new MainViewModel(); // Exemplo de BindingContext
}
// Evento chamado quando o CardInteractionOverlay é clicado
private void OnCardTapped(object sender, TappedEventArgs e)
{
DisplayAlert("Card Tapped", "Você clicou no card!", "OK");
}
}
public class MainViewModel : INotifyPropertyChanged
{
private bool _isBlocked = true;
public bool IsBlocked
{
get => _isBlocked;
set
{
_isBlocked = value;
OnPropertyChanged(nameof(IsBlocked));
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
Se você quiser contribuir com o ViewOverlayLib, fique à vontade para fazer um fork deste repositório e enviar pull requests. Toda contribuição é bem-vinda!
git checkout -b minha-feature.git commit -m 'Adiciona nova feature'.git push origin minha-feature.Este projeto é licenciado sob a MIT License.