[英]How to set onclick listener in xamarin?
我對C#和Xamarin很陌生,並且一直在嘗試實現底部元素並且不知道如何正確地執行它。 我正在使用Cocosw.BottomSheet-Xamarin.Android庫。
這是我的代碼:
Cocosw.BottomSheetActions.BottomSheet.Builder b = new Cocosw.BottomSheetActions.BottomSheet.Builder (this);
b.Title ("New");
b.Sheet (Resource.Layout.menu_bottom_sheet)
現在我認為我應該使用b.Listener(...)
,但它需要一個接口IDialogInterfaceOnClickListener
作為參數,我不知道如何在C#中正確地執行它。
在Java中我可以寫
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
}
});
我試過這樣做:
class BottomSheetActions : IDialogInterfaceOnClickListener {
public void OnClick (IDialogInterface dialog, int which) {
Console.WriteLine ("Hello fox");
}
public IntPtr Handle { get; }
public void Dispose() {
}
}
然后這個:
b.Listener (new BottomSheetActions());
但它沒有用。
最簡單的方法是使用每個View上可用的Click
事件。 但是,為了實現IOnClickListener
(或任何其他也是IJavaObject
接口),您需要使實現它的類繼承自Java.Lang.Object
:
internal class BottomSheetActions : Java.Lang.Object, IDialogInterfaceOnClickListener
{
public void OnClick (IDialogInterface dialog, int which)
{
Console.WriteLine ("Hello fox");
}
}
這樣您就不需要實現IntPtr Handle
,您的代碼也可以正常工作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.