MonoMac/Xamarin.Mac で、ドック アイコンを持たず、起動時にウィンドウが表示されず、右上のメニュー バーにアイコンのみが表示されるアプリケーションを作成しようとしています。
Info.plist で LSUIElement = 1 (文字列型とブール型の両方を試しました) に設定しましたが、アプリケーションの起動時にステータス メニュー アイコンがまったく表示されません。表示させる唯一の方法は、LSUIElement フラグを削除することですが、ドック アイコンが表示されます。
私が使用しているスニペットは次のとおりです。
public partial class AppDelegate : NSApplicationDelegate
{
public AppDelegate ()
{
}
public override void FinishedLaunching (NSObject notification)
{
// Construct menu that will be displayed when tray icon is clicked
var notifyMenu = new NSMenu();
var exitMenuItem = new NSMenuItem("Quit",
(a,b) => { System.Environment.Exit(0); }); // Just add 'Quit' command
notifyMenu.AddItem(exitMenuItem);
// Display tray icon in upper-right-hand corner of the screen
var sItem = NSStatusBar.SystemStatusBar.CreateStatusItem(30);
sItem.Menu = notifyMenu;
sItem.Image = NSImage.FromStream(System.IO.File.OpenRead(
NSBundle.MainBundle.ResourcePath + @"/menu_connected.png"));
sItem.HighlightMode = true;
// Remove the system tray icon from upper-right hand corner of the screen
// (works without adjusting the LSUIElement setting in Info.plist)
NSApplication.SharedApplication.ActivationPolicy = NSApplicationActivationPolicy.Accessory;
}
}
MonoMac で Dock アイコンがなく、メニュー バー アイコンのみのウィンドウレス アプリケーションを作成する良い方法を知っている人はいますか?
ありがとう、
BB