【问题标题】:TableLayout background from sdcard来自 SD 卡的 TableLayout 背景
【发布时间】:2011-04-05 17:30:22
【问题描述】:

我想从存储在 sdcard 上的图像中将背景图像放入可能的 java 文件中。 我使用下面的代码但没有成功:/

       TableLayout tl=new TableLayout(this);
       int tmp = this.getResources().getIdentifier("sdcard/pic.png", "drawable", getPackageName());
       tl.setBackgroundResource(tmp);

一个想法?

【问题讨论】:

    标签: android background tablelayout identifier sd-card


    【解决方案1】:

    您无法从 SD 卡中获取文件作为资源。资源仅与 apk 捆绑在一起。您必须从 sdcard 上的文件创建一个可绘制对象并使用它:

    tl.setBackgroundDrawable(Drawable.createFromPath(new File(Environment.getExternalStorageDirectory(), "pic.png").getAbsolutePath()));
    

    另外你必须请求访问 SD 卡的权限,在清单中添加:

     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多