gpt4 book ai didi

android - 通过 URL 更改 Framelayout 的背景图像

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:14:25 27 4
gpt4 key购买 nike

是否可以使用 urlframelayout 设置 background

例子:我想使用像 this 这样的 URL作为我的 framelayout 背景。

我真正想要实现的是,当我的 Activity 加载时,它将从我的域中获取图像并将其用作我的框架布局背景图像。我能够做到这一点,但我使用了 ImageView 和按钮。

下面是我使用的代码:

public class MyAppActivity extends Activity {

ImageView imView;
String imageUrl= "http://www.mydomain.com/resource/images/";

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.main);
Button bt3= (Button)findViewById(R.id.postbutton);
bt3.setOnClickListener(getImgListener);

}
View.OnClickListener getImgListener = new View.OnClickListener()
{

public void onClick(View view) {

downloadFile(imageUrl+"image"+".png");
Log.i("im url",imageUrl+"image"+".png");
}

};


Bitmap bmImg;
void downloadFile(String fileUrl){
URL myFileUrl =null;
try {
myFileUrl= new URL(fileUrl);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();

bmImg = BitmapFactory.decodeStream(is);
imView.setImageBitmap(bmImg);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

这是我的 XML 代码:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/rakistaradiobg"
android:orientation="vertical" >

<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="98dp"
android:layout_gravity="bottom|center"
android:scaleType="fitXY"
android:src="@drawable/btnbg" />

<Button
android:id="@+id/postbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:text="Button" />

最佳答案

感兴趣的东西,(我从来没有尝试过,但它应该有用)

FrameLayout fm = (FrameLayout)findViewById(R.id.FrameLayout01);      
Drawable drw = ImageOperations(this,url,filename)
fm.setBackgroundDrawable(drw)

使用

在 Drawable 中转换您的图像 url
private Drawable ImageOperations(Context ctx, String url, String saveFilename) {
try {
InputStream is = (InputStream) this.fetch(url);
Drawable d = Drawable.createFromStream(is, saveFilename);
return d;
} catch (MalformedURLException e) {
e.printStackTrace();
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}

public Object fetch(String address) throws MalformedURLException,IOException {
URL url = new URL(address);
Object content = url.getContent();
return content;
}

试试这个,让我知道会发生什么......

关于android - 通过 URL 更改 Framelayout 的背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8586097/

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