什么你应该做的是规模上的一切你根据屏幕尺寸显示屏幕。
例如:如果你有一个TextView,你可以这样做:
TextView myTextView = (TextView) findViewById(R.id.myTextView_ID);
int tempSize = myTextView.getTextSize();
myTextView.setSize(TypedValue.COMPLEX_UNIT_SP, tempSize*w*h/KONSTANT);
其中W和H是屏幕的宽度和高度,KONSTANT是您的默认屏幕尺寸的产品。
您可以通过使用得到W和H:
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
h = metrics.heightPixels;
w = metrics.widthPixels;
或者,你可以做的是有多种布局(如你正在做),然后根据屏幕大小选择一个。
例如:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
h = metrics.heightPixels;
w = metrics.widthPixels;
if (h == smallScreenH && w == smallScreenW) {
setContentView(R.layout.small_screeen);
}
else if (h == mediumScreenH && w == mediumScreenH) {
setContentView(R.layout.mdeium_screen);
}
}