在网上找了一天,大多数是用Intent.ACTION_GET_CONTET来实现,可能是很早的版本了,我在5.0系统中调用进入的是最近使用过的图片页面,而不是全部的图片,选择也出问题,后来改用Intent.ACTION_PICK才得到解决,设置背景也很简单,只要获取layout的id,获取图片绝对路径,用layout.setBackground(Drawable.createFromPath())传入路径即可。拨号和发短信界面同理,还要简单一点。
<strong><span style="font-size:18px;">public class MainActivity extends Activity {
private Button button=null;
private LinearLayout layout=null;
private static final int CHOOSE=0;
private final String IMAGE_TYPE="image/*";
<span style="color:#ff6666;">@Override</span>
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
button=(Button)findViewById(R.id.button);
layout=(LinearLayout)findViewById(R.id.layout);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent_choose=new Intent(Intent.ACTION_PICK);//Intent.ACTION_GET_CONTENT和是获得最近使用过的图片。
intent_choose.setType(IMAGE_TYPE);//应该是指定数据类型是图片。
startActivityForResult(intent_choose,CHOOSE);
}
});
}
<span style="color:#ff6666;">@Override</span>
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode){
case CHOOSE:
if(resultCode==RESULT_OK){
Uri imageUri=data.getData();//图片的相对路径
Cursor cursor = getContentResolver().query(imageUri, null, null, null, null);//用ContentProvider查找选中的图片
cursor.moveToFirst();
String path=cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DATA));//获取图片的绝对路径
File imageFile=new File(path);
Drawable drawable=Drawable.createFromPath(path);
layout.setBackground(drawable);
cursor.close();
}
break;
}
}
}
<img src="https://img-blog.csdn.net/20150627113559632?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTgxMjgyMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
<img src="https://img-blog.csdn.net/20150627113615513?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTgxMjgyMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
<img src="https://img-blog.csdn.net/20150627113627042?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYTgxMjgyMzA=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
版权声明:本文为a8128230原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。