差分
info.plistでドックアイコンを非表示にする方法では常に非表示になってしまい使いにくい場面も多い。
[[ソースコード]]で動的に制御できると捗る。
<source lang="csharp">
public partial class AppDelegate : NSApplicationDelegate
public override void DidFinishLaunching(NSNotification notification)
{
var app = NSApplication.SharedApplication;
app.ActivationPolicy = NSApplicationActivationPolicy.Accessory;
}
}
</source>
上記の例ではAppDelegateのDidFinishLaunchingメソッドでドックアイコンを消しているがこれに限らず、たとえばNSApplicationのインスタンスを生成しているMainメソッドでいきなり叩いても動くようだ。
<source lang="csharp">
static class MainClass
{
static void Main(string[] args)
{
NSApplication.Init();
var application = NSApplication.SharedApplication;
application.ActivationPolicy = NSApplicationActivationPolicy.Accessory;
application.Delegate = new AppDelegate();
application.Run();
}
}