Eclipse RAP(远程应用程序平台)项目提供了一种使用SWT编写web应用程序的方法。由于来源单一,编写的代码也可以用于桌面SWT/RCP应用程序。
由于它是一个用于web应用程序的框架,我想知道它是否支持响应式设计
如果是这样的话,一个简单的例子就太好了。它不需要与RCP兼容。
我在互联网上找不到太多,有没有努力支持响应式设计?
由于RAP保护您不受web技术的影响,本机CSS和其他web技术将不起作用。
为了总结注释,您可能需要实现一个或多个自定义布局,以适应可用空间,并相应地显示/隐藏/调整托管控件的大小。
您可能还希望使用自定义控件或操作现有控件以适应可用空间。在某些地方。例如,当空间不足时,隐藏工具栏按钮上的文本。
RAP主题化也可以在一定程度上加以利用,以更改某些控件的外观和空间。
进一步阅读:
-
2014年的EclipseCon演讲:https://www.eclipsecon.org/na2014/sites/default/files/slides/Responsive%20Applications%20Tutorial%20-%20EclipseCon%202014.pdf
-
一篇博客文章,其中包含有关SWT响应UI的代码示例:http://www.codeaffine.com/2014/02/24/responsive-uis-with-eclipse-and-swt/
-
RAP主题:https://eclipse.org/rap/developers-guide/devguide.php?topic=theming.html
-
了解SWT布局:https://www.eclipse.org/articles/article.php?file=Article-理解Layouts/index.html(忽略弃用警告,自那以后核心概念没有改变)
您可以使用Tabris创建的Passe Partout使其响应。这适用于RAP,并且应与RCP兼容。
他们制作了一个自定义布局:FluidGridLayout。
最好通过工厂类com.eclipsesource.tabris.passepartout.passepartout.使用它
来源可以在github上找到:https://github.com/eclipsesource/tabris/tree/master/com.eclipsesource.tabris.passepartout
将此插件添加到您的依赖项中,或者只复制项目中的源代码。
有关基本信息,请参阅eclipsesource上的博客文章:https://eclipsesource.com/products/tabris/eclipse-rap-documentation/responsive-design/
它的伟大之处在于,您可以用java对其进行编程。
我现在遇到的唯一问题是滚动。在我的例子中,我有一个工作台,我的编辑器部分需要一个滚动复合,只设置为V_SCROLL。我添加了两个调整大小的监听器来设置scrolledcomposite的新minsize。
- 当整个浏览器调整大小时,显示器上有一个调整大小的侦听器
- 当只有编辑器部分调整大小时,父级的第二个调整大小侦听器。(fe当视图被调整大小或编辑器部分被最大化时)