gpt4 book ai didi

android - 从 Assets 中获取位图,然后将其加载到后台

转载 作者:太空宇宙 更新时间:2023-11-03 11:22:43 24 4
gpt4 key购买 nike

大家好,过去我在这里得到了很多帮助,想知道你们是否可以帮我解决一些问题。

我想从 Assets 中加载位图,然后将其添加到我在代码中创建的线性布局 ImageView 的背景中。我知道如何使用 xml 布局文件执行此操作,但在这种情况下,我需要在代码中执行此操作。到目前为止我有这个并且它适用于 .xml 布局但是当我尝试在代码中创建线性布局和 ImageView 时图像没有显示。我有没有忽略或做错了什么。这是我得到的代码

ImageView backgroundPainting = new ImageView(this);
backgroundPainting.setAdjustViewBounds(true);


LinearLayout rel = new LinearLayout(this);
// RelativeLayout backgroundPaintingRL = (RelativeLayout) findViewById(R.id.RelativeLayout01);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.FILL_PARENT,
LinearLayout.LayoutParams.FILL_PARENT);
//lp.addRule(RelativeLayout.BELOW, R.id.ButtonRecalculate);
//lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
rel.addView(backgroundPainting, lp);


// backgroundPainting = (ImageView) findViewById(R.id.backgroundPainting2);
getArtist = levelSelect.getArtistNameSelected();
getLevel = level.getLevelSelected() ;

String imagePath = "artists-images/"+getArtist + getLevel+".jpg";
try { // Get reference to AssetManager
AssetManager mngr = getAssets();
// Create an input stream to read from the asset folder
InputStream ins = mngr.open(imagePath);

// Convert the input stream into a bitmap
levelBitmap = BitmapFactory.decodeStream(ins);
backgroundPainting.setImageBitmap(levelBitmap);
} catch (final IOException e) {
e.printStackTrace();
Toast.makeText(levelView.this, "couldn't set image to background", Toast.LENGTH_LONG).show();
}

请帮忙,谢谢,

企鹅

最佳答案

您必须先在您的 xml 文件中创建一个线性布局。然后在您的代码中访问该布局。

LinearLayout linearMain = (LinearLayout) findViewById(R.id.linearmainLayout);

然后在backgroundPainting 中设置位图图像后,在最后添加这两行来尝试下面的操作

rel.addView(backgroundPainting, lp);

linearMain.addView(rel);

或者你可以这样试试

setContentView(rel); 

在backgroundPainting中设置位图图像后在最后写一行

rel.addView(backgroundPainting, lp); 

关于android - 从 Assets 中获取位图,然后将其加载到后台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5063850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com