在UiBinder.ui.xml文件中使用<g:LayoutPanel>
時,可以指定<g:layer>
標籤。其他一些Google構建的小部件也有類似的特殊標籤 - <g:tab>
甚至有一個子標籤<g:header>
。UiBinder文件中的自定義標籤
如何爲我自己的小部件指定這些?
在UiBinder.ui.xml文件中使用<g:LayoutPanel>
時,可以指定<g:layer>
標籤。其他一些Google構建的小部件也有類似的特殊標籤 - <g:tab>
甚至有一個子標籤<g:header>
。UiBinder文件中的自定義標籤
如何爲我自己的小部件指定這些?
經過GWT的一些改進後,這個問題的新答案是https://stackoverflow.com/a/11785903/439317。複製下面,以避免版主刪除(也許?)。
您可以使用@UiChild在UiBinders中訪問您的小部件中聲明特殊功能。
例如,
class MyPanel extends AbsolutePanel {
@UiChild
public void addAt(Widget w, String parameter1, String parameter2) {
....
然後,在你UiBinder的,你可以在http://google-web-toolkit.googlecode.com/svn/javadoc/latest/com/google/gwt/uibinder/client/UiChild.html
您正在尋找的是UiBinder的自定義元素解析器。見this issue。不幸的是,它尚未得到支持。
您可能會對this post感興趣,以獲得關於如何自行擴展當前解析器的一些指導。
問題說
見@UiChild仍然是有趣的,兩年後:你知道關於任何改進? – jabal 2012-12-10 10:53:00
是的,有一些明顯的改進:查看@UiChild – 2012-12-11 05:36:21
實際上,查看http://stackoverflow.com/a/11785903/439317 – 2012-12-11 16:17:34