更改膨胀布局的 ImageView 可绘制对象
Change ImageView drawable of an inflated layout
我想更改imageview的drawable,保存到磁盘,并且可用。但是在设置drawable时,出现了NullPointerException
问题是,如何更改膨胀布局的 imageview drawable[源图像是“/sdcard/myappfolder/user.png”],布局膨胀
这是我的部分代码:
intilt = itilt.inflate(R.layout.pic_container, null, false); //layout is inflated successfully
picCheck(); // method to check file availability, working perfect, if file exists, returns 1, else returns 0;
if(picmark == 1){
Bitmap pch = BitmapFactory.decodeFile(file.getAbsolutePath());
imageView = (ImageView)findViewById(R.id.contimg); //contimg is ImageView id from layout pic_container
imageView.setImageBitmap(pch);
/**
* Caused by: java.lang.NullPointerException
* at com.package.packagename.javaact.onCreate(javaact.java:83)
*/
}
else{
Toast.makeText(this, "File Not Found, setting Default", Toast.LENGTH_SHORT).show();
}
这样试试:
imageView = (ImageView) intilt .findViewById(R.id.contimg);
//you should add it to somewhere. intilt = itilt.inflate(R.layout.pic_container,a existed View, true);
intilt = itilt.inflate(R.layout.pic_container, null, false); //layout is inflated successfully
picCheck(); // method to check file availability, working perfect, if file exists, returns 1, else returns 0;
if(picmark == 1){
Bitmap pch = BitmapFactory.decodeFile(file.getAbsolutePath());
//if you have inflated it into somewhere, you can just use below.
imageView = (ImageView)intilt.findViewById(R.id.contimg); //contimg is ImageView id from layout pic_container
imageView.setImageBitmap(pch);
/**
* Caused by: java.lang.NullPointerException
* at com.package.packagename.javaact.onCreate(javaact.java:83)
*/
}
else{
Toast.makeText(this, "File Not Found, setting Default", Toast.LENGTH_SHORT).show();
}
试试这个
intilt = itilt.inflate(R.layout.pic_container, null, false);
picCheck();
if(picmark == 1){
Bitmap pch = BitmapFactory.decodeFile(file.getAbsolutePath());
imageView = (ImageView) intilt.findViewById(R.id.contimg); //Change here
imageView.setImageBitmap(pch);
}
else{
Toast.makeText(this, "File Not Found, setting Default", Toast.LENGTH_SHORT).show();
}
我想更改imageview的drawable,保存到磁盘,并且可用。但是在设置drawable时,出现了NullPointerException
问题是,如何更改膨胀布局的 imageview drawable[源图像是“/sdcard/myappfolder/user.png”],布局膨胀
这是我的部分代码:
intilt = itilt.inflate(R.layout.pic_container, null, false); //layout is inflated successfully
picCheck(); // method to check file availability, working perfect, if file exists, returns 1, else returns 0;
if(picmark == 1){
Bitmap pch = BitmapFactory.decodeFile(file.getAbsolutePath());
imageView = (ImageView)findViewById(R.id.contimg); //contimg is ImageView id from layout pic_container
imageView.setImageBitmap(pch);
/**
* Caused by: java.lang.NullPointerException
* at com.package.packagename.javaact.onCreate(javaact.java:83)
*/
}
else{
Toast.makeText(this, "File Not Found, setting Default", Toast.LENGTH_SHORT).show();
}
这样试试:
imageView = (ImageView) intilt .findViewById(R.id.contimg);
//you should add it to somewhere. intilt = itilt.inflate(R.layout.pic_container,a existed View, true);
intilt = itilt.inflate(R.layout.pic_container, null, false); //layout is inflated successfully
picCheck(); // method to check file availability, working perfect, if file exists, returns 1, else returns 0;
if(picmark == 1){
Bitmap pch = BitmapFactory.decodeFile(file.getAbsolutePath());
//if you have inflated it into somewhere, you can just use below.
imageView = (ImageView)intilt.findViewById(R.id.contimg); //contimg is ImageView id from layout pic_container
imageView.setImageBitmap(pch);
/**
* Caused by: java.lang.NullPointerException
* at com.package.packagename.javaact.onCreate(javaact.java:83)
*/
}
else{
Toast.makeText(this, "File Not Found, setting Default", Toast.LENGTH_SHORT).show();
}
试试这个
intilt = itilt.inflate(R.layout.pic_container, null, false);
picCheck();
if(picmark == 1){
Bitmap pch = BitmapFactory.decodeFile(file.getAbsolutePath());
imageView = (ImageView) intilt.findViewById(R.id.contimg); //Change here
imageView.setImageBitmap(pch);
}
else{
Toast.makeText(this, "File Not Found, setting Default", Toast.LENGTH_SHORT).show();
}