使用Xamarin Forms的Android Widget?
问题描述:
我已经在Xamarin Forms中创建了一个在Android和iOS中工作的应用程序。使用Xamarin Forms的Android Widget?
现在,我想创建一个Android Widget。
我可以使用现有的Xamarin Forms页面并创建一个Android Widget吗?
如果是这样,是否有相同的样本。
我无法为它找到太多帮助。即使在Xamarin表单论坛上。
答
我创建的页面的顶部敬酒消息,我当我收到一个推送通知的消息是这样,你还是你可以创建一个这样的小部件(或页面我想),帮助ü。希望。
var pw = new Android.Widget.PopupWindow(Xamarin.Forms.Forms.Context); //create a window
var layout = new Android.Widget.RelativeLayout(Xamarin.Forms.Forms.Context);
pw.ContentView = layout; //create your layout holder
pw.Width = 100; //set window sizes
pw.Height = 100;
pw.WindowLayoutType = WindowManagerTypes.Toast; //window type (there are some other types too, just investigate :)
var tv = new Android.Widget.TextView(Xamarin.Forms.Forms.Context); //create a text and add to your layout holder
tv.Text = "Hello";
layout.AddView(tv);
pw.ShowAtLocation(layout, GravityFlags.Top, 0, 0); //show your window
您可以通过解雇pw.Dissmiss(窗口),但我使用的是timerbecause它是一个祝酒
var timer = new System.Timers.Timer();
timer.Interval = 5000; //5 seconds
timer.Elapsed += (sender, e) =>
{
timer.Stop();
Device.BeginInvokeOnMainThread(() =>
{
pw.Dismiss();
});
};
timer.Start();
可以膨胀预定义的XAML过我想,但你必须谷歌一点:)
我不确定它是否有效,但如果您使用CustomeReneder如何?所以在这种情况下,你可以使用PageRenderer,然后你可以用“OnElementChanged”或类似的东西来捕获它... – BraveHeart