当前位置: 首页 > 面试题库 >

如何在代码中使用毕加索设置背景图像

陶温书
2023-03-14
问题内容

我知道毕加索将图像加载到imageview等中,但是如何使用毕加索设置布局背景图像?

我的代码

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.relativelayout);
        relativeLayout.setBackgroundResource(R.drawable.table_background);
        Picasso.with(MainActivity.this)
                .load(R.drawable.table_background)
                .resize(200, 200)
                .into(relativeLayout);
        return relativeLayout;
    }

我在这里遇到的任何错误都表明它无法解决。我有一个ScrollView和相对布局。


问题答案:

使用毕加索的回调

    Picasso.with(getActivity()).load(R.drawable.table_background).into(new Target(){

  @Override
  public void onBitmapLoaded(Bitmap bitmap, LoadedFrom from) {
     mainLayout.setBackground(new BitmapDrawable(context.getResources(), bitmap));
  }

  @Override
  public void onBitmapFailed(final Drawable errorDrawable) {
      Log.d("TAG", "FAILED");
  }

  @Override
  public void onPrepareLoad(final Drawable placeHolderDrawable) {
      Log.d("TAG", "Prepare Load");
  }      
})

更新:

也请检查此内容。如评论中提到的@OlivierH。



 类似资料:
  • 问题内容: 谁能给我一个例子,说明如何使用Picasso来以编程方式更改XML布局的背景吗?我发现的所有示例都可以使用Picasso更新ImageView,但不能更新布局背景。 问题答案: 您可以使用毕加索的目标: 更新 正如@BladeCoder在评论中提到的那样,毕加索对目标对象的引用很弱,因此很可能会被垃圾回收。 因此,在杰克·沃顿就其中一个问题发表评论之后,我认为这可能是一个不错的选择:

  • 问题内容: 我正在使用以下代码创建 我在路径中有一个图像设置为按钮的背景。如何以编程方式将其设置为? 问题答案: 为可绘制文件夹中的按钮设置背景图像,然后使用以下代码

  • 我正试图为主页设置一个背景图像。我是从屏幕开始获得图像位置,填充宽度,但不是高度。我的代码中是否遗漏了什么?颤振有图像标准吗?图像缩放是否基于每个手机的屏幕分辨率?

  • 问题内容: 我正在使用BlueJ作为IDE使用Java开发一个简单的平台游戏。现在,我在游戏中使用多边形和简单形状绘制了玩家/敌人的精灵,平台和其他物品。最终,我希望将它们替换为实际图像。 现在,我想知道将图像(URL或本地来源)设置为游戏窗口/画布的“背景”的最简单解决方案是什么? 如果编程时间不是太长或太复杂,我将不胜感激,因为我的编程技能不是很好,我想使我的程序尽可能简单。请为示例代码提供注

  • 我试图将图像作为JavaFX场景中的背景,但我的代码不起作用。 我试图在java eclipse中制作一个战舰游戏程序,但我遇到了一个图形问题。 当我第一次尝试运行它时,它工作了,一个新的窗口打开了,中间有一个按钮,但bakcground是空白的。当我尝试在窗口中设置一个图像作为背景时,按下“开始”按钮,什么也没有发生…

  • 正如你可以看到的使用链接,毕加索只有3个选项加载一个图像。我的问题是,如果您有一个从API的JSON响应解析的base64字符串,那么如何加载图像?