使用Xamarin Forms的Android Widget?

问题描述:

我已经在Xamarin Forms中创建了一个在Android和iOS中工作的应用程序。使用Xamarin Forms的Android Widget?

现在,我想创建一个Android Widget。

我可以使用现有的Xamarin Forms页面并创建一个Android Widget吗?

如果是这样,是否有相同的样本。

我无法为它找到太多帮助。即使在Xamarin表单论坛上。

+0

我不确定它是否有效,但如果您使用CustomeReneder如何?所以在这种情况下,你可以使用PageRenderer,然后你可以用“OnElementChanged”或类似的东西来捕获它... – BraveHeart

我创建的页面的顶部敬酒消息,我当我收到一个推送通知的消息是这样,你还是你可以创建一个这样的小部件(或页面我想),帮助ü。希望。

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过我想,但你必须谷歌一点:)