Używam GWT i UiBinder dla mojej aplikacji, a ja staram się robić toatrybuty niestandardowe w UiBinder widżety
<g:TextBox ui:field="searchBox" styleName="{style.searchBox}" placeholder="search" />
Ale zwyczaj placeholder
atrybut nie będzie działać, ponieważ nie ma setPlaceholder
metoda na TextBox
- muszę to:
searchBox.getElement().setAttribute("placeholder", "search");
powrotem w kodzie java. Wszelkie pomysły, jak to zrobić w samym UiBinder? Sądzę, że mógłbym to zmienić na normalny element wejściowy i spróbować zdobyć referencje i ich wartość, ale wolałbym nie iść tą drogą.
Afaik nie jest to możliwe (jak powiedziałeś, potrzebujesz do tego metody setera). Dlaczego nie ustawić atrybutu w konstruktorze odpowiedniej klasy widoku zaraz po wywołaniu 'initWidget (uiBinder.createAndBindUi (this))? Edytuj: lub napisz własną funkcję zastępczą, która będzie działać również w starszych przeglądarkach. – z00bs
Po tym, jak 'initWidget' jest teraz miejscem, w którym teraz nazywam' setAttribute' ... Nie chcę przenosić prezentacji z plików XML ... –