在textview上对齐图像和文本

时间:2014-06-24 15:03:52

标签: android textview imageview android-linearlayout

在我的应用程序中,我使用文本和小图标(如带有自定义适配器的listview)填充linearlayout。 我需要文本和图片具有相同的大小。有没有办法做到这一点?

以下是代码:

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
              LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT);
      LinearLayout LayoutPadre = new LinearLayout(this);
TextView Tag = new TextView(this);
      ImageView img = new ImageView(this);

      Tag.setText(data);
     if(stato.equalsIgnoreCase("presente")){
      img.setImageResource(R.drawable.ic_presente); 
     }else{
         img.setImageResource(R.drawable.ic_assente);  
     }

    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(75, LayoutParams.WRAP_CONTENT);   //Here I need the img to have same size as the text, but Tag.getHeight() returns 0
      layoutParams.setMargins(50, 0, 0, 0);

      img.setLayoutParams(layoutParams);

      LayoutPadre.setLayoutParams(params);

      LayoutPadre.addView(Tag);
      LayoutPadre.addView(img);

问题是图像不像img那样水平居中。 查看屏幕Sreen capture

感谢所有人。

2 个答案:

答案 0 :(得分:1)

将文字和图片的layout_height保持为Match_Parent而不是Wrap_Content ......按照

答案 1 :(得分:0)

如果您保留android:layout_height="wrap_content"或不起作用,也可以执行android:gravity="center"