Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Custom View: Extendo para usar parâmetros default.

Realmente com style fica bem mais tranquilo. o_O


Bom, vou fazer isso mas de qualquer forma a dúvida continua. Como que eu definiria valores defaults ali na instanciação?

Em 16 de novembro de 2011 13:33, Thiago Lopes Rosa <thiago.rosa@gmail.com> escreveu:
Não seria melhor usar styles para atingir este objetivo?


Thiago


2011/11/16 Israel Ben Guilherme Fonseca <israel.bgf@gmail.com>
Pessoal,

Dei uma olhada aqui:

Mas não achei a resposta que procurava, pergunta:

Como posso extender uma view qualquer, por exemplo um button, para definir o valor default de atributos. Exemplo:

<!-- Botão normal -->
<Button android:text="Entrar" android:width="150dp" android:layout_below="@id/LoginForm" android:layout_centerHorizontal="true" android:layout_marginTop="10dp" android:background="@layout/layout_blue_button" android:textColor="#ffffff"/>

Quero extender a View button para  manter os valores: android:background="@layout/layout_blue_button" android:textColor="#ffffff", pré definidos. E no futuro quem sabe sobrescrever algum comportamento, ou adicionar parâmetros extras.

Minha dúvida é: quando e como redefino os valores? No construtor da view faço o que?

public class Button extends android.widget.Button{

public Button(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
                // Provavelmente é aqui que faço alguma coisa, mas vou ter que ter alguma lógica para garantir que não seja sobrescrito o que veio do layout.xml
}

public Button(Context context, AttributeSet attrs) {
super(context, attrs);
}

public Button(Context context) {
super(context);
}

}

E é boa prática sempre sobrescrever os 3 construtores?



--
Thiago Rosa

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário