从xml.as获取id后我有一个ImageView 在ImageView上我们设置了clicklistener,它可以打开画廊和相机操作,你可以从相机和画廊设置图像 ain#2
profileimage = (ImageView) findViewById(R.id.profileimage);
profileimage.setBackgroundResource(R.drawable.no_img);
protected void onActivityResult(int requestCode, int resultCode,
Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (resultCode == RESULT_CANCELED) {
// TODO
return;
}
Log.e("request code", "1:" + requestCode);
switch (requestCode) {
case CAMERA_SELECT:
Log.e("in camera select", "1");
// Get the camera data
cameracalling(intent);
break;
case Gallery_Select:
ongallerycalling(intent,resultCode);
}
}
private void cameracalling(Intent intent){
Bitmap photo = (Bitmap) intent.getExtras().get("data");
profileimage.setImageBitmap(photo);
}
profileimage.buildDrawingCache();
Bitmap bmap = profileimage.getDrawingCache();
ByteArrayOutputStream bao = new ByteArrayOutputStream();
bmap.compress(Bitmap.CompressFormat.JPEG, 90, bao);
byte [] ba = bao.toByteArray();
bitmapString=Base64.encodeBytes(ba);
Drawable draw = LoadImageFromWebOperations("" + objUserInformationSitesList.getProfileImage());
profileimage.setBackgroundDrawable(draw);
我们正在服务器上正确地发送位图字符串到服务器图像上传,但是当我们下次打开这个上传图像的webservice调用的屏幕时,我们会设置服务器图像然后提供所有数据(实际上是这个用户配置文件屏幕)。默认图像也在背景上设置
objUserInformationSitesList
此对象包含解析Web服务后的所有信息。在配置文件图像后面,默认图像也查看我在编号#1上设置的内容
如果我无法正确解释,请告诉我。
答案 0 :(得分:1)
在onclicklistener中使用 profileimage.setBackgroundResource(0);
答案 1 :(得分:1)
您应该替换以下行:
profileimage.setBackgroundResource(R.drawable.no_img);
这一行:
profileimage.setImageResource(R.drawable.no_img);
您将图像设置为drawable的背景,然后将位图设置为图像源。所以imageview背景不会改变。您应该将图像设置为图像资源。