按钮中的图像模糊,按钮忽略setSize

时间:2015-06-11 17:40:57

标签: java android button android-studio

我在Android应用程序中创建按钮有两个问题。

  1. 按钮中的图像(经典Button)模糊不清。我认为Android工作室增加了图像的大小,但不确定。这是来自模拟器和使用过的图像的屏幕:screen from emulator used icon
  2. 这是一种如何消除这种模糊效果的方法吗?

    1. 在创建按钮的过程中,我设置了按钮的高度,但看起来按钮在内部有图标时忽略了这一点(偶数maxSize)。 如何设置按钮的大小?
    2. 这是创建按钮的代码。

             LinearLayout layout = (LinearLayout) findViewById(R.id.linearLayout);
              Button button;
              for(Subreddit s:subreddits)
              {
                  button = new Button(this);
      
                  Drawable img = getResources().getDrawable(R.drawable.reddit2);
                  //img.setBounds(0, 0, 50, 60);
                  button.setCompoundDrawablesWithIntrinsicBounds(img, null, null, null);
      
                  button.setMinHeight(0);
                  button.setHeight(30);
                  button.setText(s.getDisplayName());
                  button.setBackgroundDrawable(getResources().getDrawable(R.drawable.button_shape2));
                  button.setTextColor(getResources().getColor(R.color.button_text_color));
                  button.setGravity(Gravity.LEFT);
                  button.setGravity(Gravity.CENTER_VERTICAL);
                  button.setAllCaps(false);
                  button.setCompoundDrawablePadding(15);
                  button.setMaxHeight(35);
      
                  layout.addView(button);
              }
              layout.invalidate();
      

1 个答案:

答案 0 :(得分:0)

ImageButton setImageResource 一起使用。  此外,我会使用RecyclerView ora ListView而不是像这样构建它。  没有必要调用invalidate,一旦你将视图添加到视图组,它已经调用invalidate。无效是一种代价高昂的方法。