我试图使View
看起来与正常情况完全相同,只是尺寸较小。我试过这样做:
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.LinearLayout;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout ll = new LinearLayout(getBaseContext());
final Button b1 = new Button(getBaseContext());
final Button b2 = new Button(getBaseContext());
final Button b3 = new Button(getBaseContext());
b1.setText("button 1");
b2.setText("button 2");
b3.setText("button 3");
b2.setScaleX(0.5f);
b2.setScaleY(0.5f);
ll.addView(b1);
ll.addView(b2);
ll.addView(b3);
setContentView(ll);
}
}
它会对View
进行缩放,但如果我根本不进行缩放,它仍会占用它所占用的空间:
我想摆脱按钮2周围的不可见空间。LinearLayout
中的3个按钮应该是紧凑的。
答案 0 :(得分:0)
button2在设置scale之前进行测量。在设置scale之前调用onmeasure时会生成button2的宽度和高度。这样就无法得到正确的结果。