我已經轉換了整個源代碼,但是對于 Call.Callback 無法轉換是否有任何地方可以在 C# 上使用它,對不起,我是 Xamarin (C#) 的新手。另外,我想在 RegisterCallBack() 中使用“回呼”,它適用于 java,但不適用于 c#。
private Call.Callback callback = new Call.Callback() {
public void onStateChanged(Call call, int state) {
}
};
public void onCallAdded(Call call)
{
call.RegisterCallback(callback);
PhoneCallManager.call = call;
}
uj5u.com熱心網友回復:
您提供的代碼是 Java 中的匿名內部類。對于C#,如果你想在一個類中添加或覆寫一個方法,你需要創建一個類來擴展它,然后添加或覆寫你想要的方法。如:
public class MyCallback : Call.Callback
{
public void onStateChanged(Call call, int state)
{
CallManager.updateCall(call);
}
}
另外,如何獲取CallManager?我檢查了 Call.Callback 的資源代碼,其中沒有 CallManager 的實體。根據此鏈接,您似乎需要使用類加載器來獲取 CallManager。
更新
private MyCallback callback = new MyCallback();
public void onCallAdded(Call call)
{
call.RegisterCallback(callback);
PhoneCallManager.call = call;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/487691.html
標籤:爪哇 C# 安卓 xamarin xamarin.android
上一篇:如何在OCaml中回傳浮點數?
