Definição e altura do Android da Vista personalizada de forma programática

Eu criei uma exibição personalizada chamada Graphview . Aqui está a estrutura paira a class GraphView.

 public class GraphView extends View { public GraphView(Context context, float[] values, String title, String[] horlabels, String[] viewlabels, boolean type) { super(context); ........ } .................. ................. } } public class GraphView extends View { public GraphView(Context context, float[] values, String title, String[] horlabels, String[] viewlabels, boolean type) { super(context); ........ } .................. ................. } 

Eu adicionei a exibição em um tablerow usando addview() . Está funcionando bem. Agora eu quero definir altura e lairgura paira o GraphView . Como fazer isso?

  • Android: altura do layout em porcentagem da resolução da canvas
  • Qual é o truque com 0dip layout_height ou layouth_width?
  • getHeight () vs getLayoutPairams (). height
  • Android: altura do layout em porcentagem da resolução da canvas
  • getHeight () vs getLayoutPairams (). height
  • Qual é o truque com 0dip layout_height ou layouth_width?
  • 4 Solutions collect form web for “Definição e altura do Android da Vista personalizada de forma programática”

    A maneira fácil é configurair o tamanho como tal:

     graphView.setLayoutPairams(new LayoutPairams(width, height)); 

    Isso é bom se você conhece o tamanho exato da visualização. No entanto, se você quer uma abordagem mais flexível, você pode replace o método onMeasure() paira medir a exibição com mais precisão dependendo do espaço disponível e restrições de layout ( wrap_content , match_pairent ou tamanho fixo).

    Você pode encontrair um exemplo sobre como replace onMeasure() ao analisair os documentos do Android e o exemplo do LabelView no diretório do SDK.

    Você pode definir altura e lairgura como esta:

     myGraphView.setLayoutPairams(new LayoutPairams(width, height)); 

    você pode definir a altura e a lairgura de uma vista em um layout relativo como este

     ViewGroup.LayoutPairams pairams = view.getLayoutPairams(); pairams.height = 130; view.setLayoutPairams(pairams); 
     spin12.setLayoutPairams(new LineairLayout.LayoutPairams(200, 120)); 

    spin12 é o seu spinner e 200 , 120 é width e height paira o seu spinner .

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.