问题标签 [xamarin.mac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1792 浏览

visual-studio-2012 - 从 Visual Studio 使用 Xamarin 创建 Mac 应用

在 Visual Studio 中的 Xamarin 上创建 Android 和 IOS 应用程序似乎很容易,但我看不到如何创建 OSX 应用程序。

在 Windows/VS 的 Xamarin 下载页面上,它声明“包括以下内容:Mac - 使用 Xamarin.Mac 开发应用程序”。没有创建 OSX/Mac 项目的选项

抱歉,如果我很密集,但我在这里绕圈子,总是得到有关创建 IOS 应用程序的信息。我知道我可以在 Mac 上使用 Xamarin Studio 创建应用程序,但这并不理想。

0 投票
0 回答
534 浏览

c# - 处理文本标签上的鼠标事件 (NSText)

我是 Xamarin 和 Cocoa 新手 :)

我需要处理鼠标事件,如鼠标悬停或单击标签(如 NSText,对吗?),就像其他控件一样。

我注意到类似 WinForms 的事件处理仅适用于某些事件(例如 NSButton 的“激活”),但我需要处理更多事件。

在 xamarin 开发人员领域寻找最佳实践,我阅读了这个页面http://docs.xamarin.com/guides/ios/application_fundamentals/delegates,_protocols,_and_events然后尝试继承 NSText 并覆盖诸如 MouseEntered 之类的方法,但我得到了以下错误消息:

所有 NSText 方法都必须由子类实现。他们不应该打电话给超级。

该怎么办?

更新:对于自定义事件,应使用 NSTextView 而不是 NSText,如此处所述: https ://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSText_Class/Reference/Reference.html

0 投票
1 回答
3456 浏览

c# - 在 Monomac/Xamarin C# 中创建无窗口菜单栏图标应用程序

我正在尝试在 MonoMac/Xamarin.Mac 中创建一个应用程序,该应用程序在启动时没有停靠图标,也没有可见窗口,并且在右上角的菜单栏中只有一个图标。

我在 Info.plist 中设置了 LSUIElement = 1(尝试了 String 和 Boolean 类型),但是在应用程序启动时根本不显示状态菜单图标。我可以让它出现的唯一方法是删除 LSUIElement 标志,尽管随后停靠图标变得可见。

我正在使用的片段是:

有谁知道在没有停靠图标且只有菜单栏图标的 MonoMac 中创建无窗口应用程序的好方法?

谢谢,

BB

0 投票
1 回答
624 浏览

macos - 带有辅助命令行工具的沙盒 Mac App

提交我的应用程序时出现以下错误

签名无效 - 路径 MyApp.app 中的主应用程序包 MyApp 已签名,但签名无效。codesign 报告了以下错误:a seal resource is missing or invalid In architecture: i386

我有一个位于 Resources 文件夹中的小型控制台应用程序,它根本不需要 root 权限。我没有这个助手的源代码,所以我无法重建它。

如果我从捆绑包中删除控制台应用程序,错误就会消失。

这个命令行助手应用程序所做的是它需要一个文件处理它并根据 args 传递的一些信息创建一个新文件。

那么问题来了,我们如何将命令行工具嵌入到我们的沙盒应用程序中并绕过上述错误?同样,我不拥有此帮助工具的源代码。

0 投票
2 回答
815 浏览

c# - 通过双击右键防止编辑 NSTextField

我正在使用 MonoMac/C# 并且有一个 NSOutlineView ,其中一些项目是可编辑的。因此,如果您选择一个项目,然后再次单击它(缓慢双击)该行的 NSTextField 进入编辑模式。我的问题是即使您右键单击该项目也会发生这种情况。您甚至可以混合左键单击和右键单击进入编辑模式。

这很烦人,因为您有时会选择一行然后右键单击它,然后在上下文菜单出现一秒钟后,该行进入编辑模式。

有没有办法限制 NSOutlineView 或其中的 NSTextFields,只使用鼠标左键进入编辑模式(除了在选择行时按 Enter 键)?

谢谢!

0 投票
2 回答
271 浏览

c# - 在代码中创建 MenuItem 时崩溃 (MonoMac)

我试图在运行时动态地将一些菜单项添加到子菜单中。我可以很好地添加 NSMenuItem 并显示出来。但是,如果我尝试添加一个事件处理程序,或者直接作为构造函数的参数,或者通过将其分配给 Activated 事件,我会崩溃。菜单和子菜单是在 Xcode 中创建的。我只是在运行时在一个特定的子菜单中添加/删除项目。

绘制子菜单时发生崩溃。我右键单击,将鼠标移到上下文菜单上,直到找到动态子菜单所在的项目,然后崩溃!

崩溃报告很长,但这是我认为最相关的部分:

我正在运行 Xamarin Studio 4.0.12、Mono 3.2.0、Xcode 4.6.3、Xamarin.Mac 1.4.8、OS X 10.8.4

0 投票
1 回答
419 浏览

sqlite - 在 monomac 上使用 dllmap

我正在尝试根据这个问题有效地使用 MonoMac 的 sqlite 自定义构建。

但是,使用 dllmap 似乎不起作用。

我的自定义 dylib 正在部署到[myapp.app]/Contents/Frameworks/mycustomlib.dylib

输出otool -L mycustomlib.dylib看起来正确:

我的myapp.exe.config文件如下所示:

而且我已经验证它正在myapp.exe[MyApp.app]/Contents/MonoBundle.

Mono.Data.Sqlite我可以通过重新编译并直接替换对sqlite3with的引用来强制它工作mycustomlib。但是,dllmap 路由要好得多。

我错过了什么?我该如何调试呢?

0 投票
0 回答
198 浏览

macos - Xamarin.Mac 的 MvvmCross 插件约定

我想为我们的 MvvmCross 插件添加一个 Xamarin.Mac 实现。

在 wiki(wiki 链接)中,它列出了平台命名约定:

  • 安卓:Acme.Vibrate.Droid.dll
  • iOS:Acme.Vibrate.Touch.dll
  • WindowsPhone:Acme.Vibrate.WindowsPhone.dll
  • WindowsStore:Acme.Vibrate.WindowsStore.dll
  • Wpf:Acme.Vibrate.Wpf.dll

是否支持 Xamarin.Mac,如果支持,约定是什么?

如果不是,最好按照MvvmCross 中的说明进行连接:传统插件绕过

谢谢。

0 投票
1 回答
3757 浏览

monomac - 如何将 NSObject.FromObject 反转回常规 C# 类型

NSObject.FromObject 的反面是什么,例如,从 NSObject 中获取常规 C# 对象。可以理解,这仅适用于简单类型。

更新。假设我什至知道类型 - 但不是在运行时之前。我试过了

但我收到一条消息“值不是可转换对象:MonoMac.Foundation.NSString 到 System.String”。

更新 2. FromObject 的工作原理:

0 投票
1 回答
507 浏览

mono - Xamarin 中的 Dispose 和 dealloc 语义

我有一个绑定在 monomac 中的 Cocoa 类。如果我调用Dispose()该类的一个实例,它是否应该总是dealloc在非托管端调用?

dealloc托管类被Dispose()编辑时没有被调用的原因可能是什么?