Итак, дело в том, что этот стиль по умолчанию выглядит так, будто он применяется только тогда, когда вы расширяете макет из XML, что хорошо, если вы хотите обойти стили по умолчанию. Что вы можете сделать, так это поместить FrameLayout в свой XML-макет, чтобы определить ограничивающую рамку для LoginButton
, а затем программно добавить LoginButton с помощью конструктора LoginButton(Context ctx, AtrributeSet attrs, int styleDef)
.
Это решение довольно хакерское, поскольку оно требует, чтобы вы поместили всю информацию о стилях в стиль, а не в XML, но оно должно выполнить свою работу.
Редактировать: я также думаю, что мне следует повторить приведенный выше постер, сказав, что это, вероятно, не лучшая идея по ряду причин. С чисто косметической точки зрения многие пользователи привыкли к этой синей кнопке Facebook, означающей что-то очень конкретное. Если ваше приложение переопределит этот внешний вид, это может привести к более негативным последствиям для вашего пользовательского интерфейса, чем просто сохранение стандартной кнопки FB. Кроме того, я не полностью читал УИ, но и там это может стать нарушением.
person
Jonathan
schedule
24.07.2013