使用MacBook Pro touchbar支持创建Java应用程序?

时间:2016-12-18 14:59:28

标签: java macos nstouchbar macbookpro-touch-bar

正如瓷砖描述的那样,我希望能够为我的MacBook Pro 2016用户的Java应用程序添加一些很酷的触摸栏按钮..我还没有看到是否有一种方法可以在Java中实现它。

有人对此有所了解吗?

2 个答案:

答案 0 :(得分:8)

有一个新的Java库,用于与名为JTouchBar的NSTouchBar API进行交互。

例如使用SWT

Shell shell = ...

JTouchBar jTouchBar = new JTouchBar();
jTouchBar.setCustomizationIdentifier("MySWTJavaTouchBar");

// flexible space
jTouchBar.addItem(new TouchBarItem(TouchBarItem.NSTouchBarItemIdentifierFlexibleSpace));

// button
TouchBarButton touchBarButtonImg = new TouchBarButton();
touchBarButtonImg.setTitle("Button 1");
touchBarButtonImg.setAction(new TouchBarViewAction() {
    @Override
    public void onCall( TouchBarView view ) {
        System.out.println("Clicked Button_1.");
    }
});

Image image = new Image();
img.setName(ImageName.NSImageNameTouchBarColorPickerFill);
touchBarButtonImg.setImage(image);

jTouchBar.addItem(new TouchBarItem("Button_1", touchBarButtonImg, true));

// label
TouchBarTextField touchBarTextField = new TouchBarTextField();
touchBarTextField.setStringValue("TextField 1");

jTouchBar.addItem(new TouchBarItem("TextField_1", touchBarTextField, true));

// enable touchbar
jTouchBar.enableForShell(shell);

您可以在Github上找到该库: https://github.com/Thizzer/JTouchBar

答案 1 :(得分:3)

从外观上看,苹果并没有为在触摸栏中添加项目提供支持,更不用说在java中这样做了。

在浏览触摸栏的某些文档时,您似乎还需要docs类的实例。 Java没有这个,也没有提供一种方法。我怀疑使用本机方法也会起作用,看看实例是如何特定于应用程序并通过apple传递给应用程序。

可以访问该栏,但只能本地访问。