はXamarin.Formsでそれを行う可能性はありますか?HyperlinkButton
私はこれを見つけましたが、同じではありません。
https://github.com/XLabs/Xamarin-Forms-Labs/wiki/HyperLinkLabel
はXamarin.Formsでそれを行う可能性はありますか?HyperlinkButton
私はこれを見つけましたが、同じではありません。
https://github.com/XLabs/Xamarin-Forms-Labs/wiki/HyperLinkLabel
私はGestureRecognizers
を使用して、ラベルにTap Gesture
を追加することを示唆しています。 Ref: here
var label = new Label()
{
Text="My Hyperlink"
};
var tapGestureRecognizer = new TapGestureRecognizer();
tapGestureRecognizer.Tapped += (s, e) => {
// handle the tap
};
label.GestureRecognizers.Add(tapGestureRecognizer);
GestureRecognizer
Label
から継承View
クラスのパブリックプロパティです。 here
もっと標準的なアプローチを採用し、Button
を使用します。アプリの背景に合わせて背景を設定し、枠線を削除するだけです。その後、特別なTapGestureRecongniser
コードの必要はありません。 (擬似コード:)
XAMLの下:
<Button Text="Click Me!" Background= "YourAppBackground" BorderWidth="0" Clicked="OnButtonClicked" />
コードビハインド:
void OnButtonClicked(object sender, EventArgs args)
{
//Open your link in here
}
はい、あなたはどちらかを使用するボタンをクリックまたはTapGestureRecognizerことができます。 サイトにリダイレクトする場合は、WebViewを使用できます。 独自のネイティブページに誘導する場合: NavigationPageを使用している場合は、 Navigation.PushAsync(new Page());を使用できます。 NavigationPageを使用せずにMainPageを変更したい場合: App.Current.MainPage = new MyContentPage();
これは私がリンクとしてラベル行為を持っているために使用するクラスです:より多くのオプションについては
public class SimpleLinkLabel : Label
{
public SimpleLinkLabel(Uri uri, string labelText = null)
{
Text = labelText ?? uri.ToString();
GestureRecognizers.Add(new TapGestureRecognizer { Command = new Command(() => Device.OpenUri(uri)) });
}
}
、creating a hyperlink in Xamarin Formsについては、この答えは役に立つかもしれません。次のように
XAMLコードは次のようになります。
<Label
Text="My Text to click"
HorizontalOptions="Center" >
<Label.GestureRecognizers>
<TapGestureRecognizer
Tapped="OnLabelTapped"
NumberOfTapsRequired="2" />
</Label.GestureRecognizers>
</Label>
注:デフォルトでは、NumberOfTapsRequired
は方法OnLabelTapped
を追加し、あなたの.cs
ファイルに続いて1
です。
public void OnLabelTapped(object sender, EventArgs args)
{
// Your code here
// Example:
// DisplayAlert("Message", "You clicked on the label", "OK");
}
私はこれを行う - >次のクラスを作成:あなたはリンクボタンを作成する必要がどこにでもこの使用後
public class ButtonAsLink : Button
{
public ButtonAsLink()
{
this.TextColor = Color.Blue;
this.BackgroundColor = Color.Transparent;
this.BorderWidth = 0;
}
}
を:私はページにリダイレクトするにはどうすればよい
SendButton = new ButtonAsLink()
{
Text = "Send Logs...",
VerticalOptions = LayoutOptions.Center
};
をこの方法では? –