「Xamarin.MacでDockアイコンを非表示にする」を編集中

ナビゲーションに移動 検索に移動

警告: ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。ログインまたはアカウントを作成すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。

この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。

最新版 編集中の文章
13行目: 13行目:
 
info.plistでドックアイコンを非表示にする方法では常に非表示になってしまい使いにくい場面も多い。
 
info.plistでドックアイコンを非表示にする方法では常に非表示になってしまい使いにくい場面も多い。
 
[[ソースコード]]で動的に制御できると捗る。
 
[[ソースコード]]で動的に制御できると捗る。
 
+
この例ではAppDelegateのDidFinishLaunchingメソッドでドックアイコンを消しているがこれに限らず、たとえばNSApplicationのインスタンスを生成しているMainメソッドでいきなり叩いても動くようだ。
NSApplicationインスタンスのActivationPolicyプロパティに、「Accessory」または「Prohibited」を設定するとドックアイコンが非表示になり、「Regular」を設定するとドックアイコンが表示になる。
 
 
<source lang="csharp">
 
<source lang="csharp">
 
     public partial class AppDelegate : NSApplicationDelegate
 
     public partial class AppDelegate : NSApplicationDelegate
22行目: 21行目:
 
         public override void DidFinishLaunching(NSNotification notification)
 
         public override void DidFinishLaunching(NSNotification notification)
 
         {
 
         {
 +
            // NSApplicationのActivationPolicyプロパティに
 +
            // AccessoryまたはProhibitedを設定するとドックアイコンが非表示になり、
 +
            // Regularを設定するとドックアイコンが表示になる。
 
             var app = NSApplication.SharedApplication;
 
             var app = NSApplication.SharedApplication;
 
             app.ActivationPolicy = NSApplicationActivationPolicy.Accessory;
 
             app.ActivationPolicy = NSApplicationActivationPolicy.Accessory;
        }
 
    }
 
</source>
 
 
上記の例ではAppDelegateのDidFinishLaunchingメソッドでドックアイコンを消しているがこれに限らず、たとえばNSApplicationのインスタンスを生成しているMainメソッドでいきなり叩いても動くようだ(NSApplication.Initメソッド呼び出し後であればどこでも良いようだ)。
 
<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();
 
 
         }
 
         }
 
     }
 
     }

MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細はMonoBook:著作権を参照)。 著作権保護されている作品は、許諾なしに投稿しないでください!

このページを編集するには、下記の確認用の質問に回答してください (詳細):

取り消し 編集の仕方 (新しいウィンドウで開きます)

このページで使用されているテンプレート:

このページは 1 個の隠しカテゴリに属しています: