我正在尝试使用 sd 卡中的图像并将其设置为相对布局的背景。我已经尝试过在这里和其他地方找到的其他解决方案,但它们似乎对我不起作用。这是我的代码。我已经评论了我尝试过但没有奏效的其他方法。唯一对我有用的是使用 setBackgroudnResource 并使用应用程序中的资源,但这只是为了测试以确保 mRoot 设置正确。当我尝试了所有其他方式时,它只是没有设置任何东西。任何人都知道我做错了什么,或者是否有更好的方法来做到这一点?
//one way i tired...
//String extDir = Environment.getExternalStorageDirectory().toString();
//Drawable d = Drawable.createFromPath(extDir + "/pic.png");
//mRoot.setBackgroundDrawable(d);
//another way tried..
//Drawable d = Drawable.createFromPath("/sdcard/pic.png");
//mRoot.setBackgroundDrawable(d);
//last way i tried...
mRoot.setBackgroundDrawable(Drawable.createFromPath(new File(Environment.getExternalStorageDirectory(), "pic.png").getAbsolutePath()));
//worked, only to verify mRoot was setup correctly and it could be changed
//mRoot.setBackgroundResource(R.drawable.bkg);