XAML in Xamarin.Forms 基礎篇 電子書

XAML in Xamarin.Forms 基礎篇 電子書
XAML in Xamarin.Forms 基礎篇 電子書

Xamarin.Forms 快速入門 電子書

Xamarin.Forms 快速入門 電子書
Xamarin.Forms 快速入門 電子書

2017/01/20

Xamarin FAQ 1-19 : 如何製作類似 HTML 可連結文字標籤

問題

在 Xamarin.Forms 所提供的預設控制項中,並沒有看到類似 HTLM 可連結文字標籤效果的控制項,而且,從 Label 控制項中,也看不到有任何 點擊 Tap / Click 相關的事件可以使用;若想要在 Xamarin.Forms 的頁面中開發出這樣的控制項效果,是不是只能夠透過 Renderer 的方式來實現呢?

解答

其實,關於這樣的需求,不需要透過 Renderer 就可以做到;在每個控制項中,都會擁有一個 GestureRecognizers 屬性,您可以透過這個屬性,加入想要的手勢操作 XAML 物件,就可以偵測出使用者是否有點擊這個 Label 標籤控制項了。
以底下的 XAML 宣告標籤而言,我們在 Label.GestureRecognizers 屬性內,加入了一個 TapGestureRecognizer 物件,並且使用了 Command 屬性綁定了檢視模型 ViewModel 內的一個 ICommand的屬性,如此,您就可以在這個 ICommand 中來定義,當使用者點擊了這個文字標籤之後,需要做哪些相關的處理動作。
            <Label 
                Grid.Column="0"
                HorizontalOptions="Center" VerticalOptions="Center"
                Text="查看明細"
                TextColor="Blue"
                FontSize="14"
                   >
                <Label.GestureRecognizers>
                    <TapGestureRecognizer Command="{Binding 查看明細Command}"/>
                </Label.GestureRecognizers>
            </Label>

沒有留言:

張貼留言