我有一个简单的问题似乎有两个简单的解决方案,这两个解决方案都不适合我,我似乎无法理解为什么.
我希望为我的布局设置纵向视图背景和备用横向背景.我将不同的图像分别放在单独的文件夹布局和布局 – 土地中.
肖像=它应该是什么
landscape =黑屏
然后我尝试制作一个名为drawable-land的文件夹,并在那里放置宽视图背景.
同样的结果.
去画像时是黑色的.
有什么东西我不见了?这看起来很简单,我无法理解我可能做错了什么.
提前致谢.
解决方法:
要以编程方式更改背景,具体取决于屏幕的方向:
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LinearLayout linearLayout = (LinearLayout)findViewById(R.id.layout);
Resources res = getResources();
Drawable portrait = res.getDrawable(R.drawable.portrait);
Drawable landscape = res.getDrawable(R.drawable.landscape);
WindowManager window = (WindowManager)getSystemService(WINDOW_SERVICE);
Display display = window.getDefaultDisplay();
int num = display.getRotation();
if (num == 0){
linearLayout.setBackgroundDrawable(portrait);
}else if (num == 1 || num == 3){
linearLayout.setBackgroundDrawable(landscape);
}else{
linearLayout.setBackgroundDrawable(portrait);
}
}
尝试一下,我希望它有所帮助!