Eu criei uma exibição personalizada chamada Graphview
. Aqui está a estrutura para a classe GraphView.
public class GraphView extends View {
public GraphView(Context context, float[] values, String title, String[] horlabels, String[] verlabels, boolean type) {
super(context);
........
}
..................
.................
}
Eu adicionei a exibição em uma tabela usando addview()
. Está funcionando bem. Agora eu quero definir altura e largura para o GraphView
. Como fazer isso?
LayoutParams
deve ser do layout em que o localgraphView
é colocado. Por exemplo, se no arquivo de layout XMLgraphView
é colocado dentroRelativeLayout
, então você deve usarnew RelativeLayout.LayoutParams(width, height)
Você pode definir altura e largura da seguinte forma:
fonte
myGraphView.getLayoutParams().height = 100;
.this.getLayoutParams().height = 100
, certifique-se de segui-lothis.setLayoutParams(this.getLayoutParams())
, caso contrário ele não fará nada (útil).você pode definir a altura e a largura de uma vista em um layout relativo como este
fonte
setLayoutParams()
é necessária porque invoca outros métodos, comoresolveLayoutParams()
erequestLayout()
layoutParams
iniciação de uma exibição será um NPE, por favor, explique em que momento você executa isso?No Kotlin, você pode definir a largura e a altura de qualquer visualização diretamente usando suas propriedades virtuais:
fonte
spin12
é o seu spinner e 200 , 120 éwidth
eheight
para o seuspinner
.fonte
Esta é uma versão baseada em Kotlin, assumindo que a visualização principal seja uma instância de
LinearLayout
.Isso permite definir a largura e a altura (
100
e200
) em uma única linha.fonte