Sobes.tech
Middle

Quais métodos existem na classe View no Android e qual é a sua finalidade?

sobes.tech IA

Resposta da IA

  • onMeasure(int widthMeasureSpec, int heightMeasureSpec): Determina o tamanho da View tendo em conta as restrições do contêiner pai.
  • onLayout(boolean changed, int left, int top, int right, int bottom): Posiciona a View dentro do seu pai.
  • onDraw(Canvas canvas): Desenha o conteúdo da View no Canvas fornecido.
  • invalidate(): Solicita uma nova renderização completa da View. Chama onDraw.
  • requestLayout(): Solicita o recálculo do tamanho e da posição de todas as Views na hierarquia, começando pela que chamou o método. Chama onMeasure e onLayout.
  • onClick(View v): Trata o evento de clique na View, se um OnClickListener estiver anexado.
  • onTouchEvent(MotionEvent event): Trata eventos de toque de baixo nível.
  • findViewById(int id): Encontra a View com o ID especificado na hierarquia atual.
  • setVisibility(int visibility): Define a visibilidade da View (View.VISIBLE, View.INVISIBLE, View.GONE).
  • getLayoutParams(): Retorna um objeto LayoutParams que descreve como a View deve ser posicionada no contêiner pai.
  • setLayoutParams(ViewGroup.LayoutParams params): Define o objeto LayoutParams para a View.
  • setOnClickListener(OnClickListener l): Define um ouvinte para tratar cliques.
  • setBackground(Drawable background) / setBackgroundColor(int color) / setBackgroundResource(int resid): Define o fundo da View.
  • setPadding(int left, int top, int right, int bottom): Define as margens internas (padding) da View.
  • getMeasuredWidth() / getMeasuredHeight(): Retornam as dimensões medidas da View após a fase de Medida.
  • getWidth() / getHeight(): Retornam as dimensões reais da View após a fase de Layout.

Alguns destes métodos são protegidos (protected) e destinam-se a serem sobrescritos em subclasses de View para implementar comportamentos personalizados. Outros são públicos e utilizados para interagir com instâncias de View.