2010-12-10 181 views

回答

1

在Activity中实现onConfigurationChanged方法,您可以检查方向并更改UI的外观。

参数:newConfig.orientation会告诉你当前的方向。

试着这么做:

@Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 

     ImageView header = (ImageView) this.findViewById(R.id.header); 

     if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { 
      header.setImageResource(R.drawable.header480); 
     } 
     else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) { 
      header.setImageResource(R.drawable.header320); 

     } 
    } 

您也可以使用这种代码真正得到实时的屏幕尺寸:

显示显示=((窗口管理器)getSystemService(Context.WINDOW_SERVICE) ).getDefaultDisplay(); int width = display.getWidth();
...

+0

这很好,但如果你有不同大小的景观和肖像,但具有相同名称的图像头像? – Maxrunner 2011-09-22 10:21:03

相关问题