2016-9-23

来源:互联网 发布:unity3d lua 开发 编辑:程序博客网 时间:2024/06/01 08:02

2016-9-23

1.view移除背景后再设置背景导致padding无效

public void setBackgroundDrawable (Drawable background)Added in API level 1This method was deprecated in API level 16. use setBackground(Drawable) insteadpublic void setBackground (Drawable background)Added in API level 16Set the background to a given Drawable, or remove the background. If the background has padding, this View's padding is set to the background's padding. However, when a background is removed, this View's padding isn't touched. If setting the padding is desired, please use setPadding(int, int, int, int).在再次设置背景前,需要先获取padding,如下:    int paddingLeft = button.getPaddingLeft();    int paddingRight = button.getPaddingRight();    int paddingTop = button.getPaddingTop();    int paddingBottom = button.getBottom();    button.setBackgroundDrawable(new ColorDrawable());    button.setPadding(paddingLeft,paddingTop,paddingRight, paddingBottom);

2.android自定义view时,在页面被回收时保存变量

    @Override      protected Parcelable onSaveInstanceState() {          Bundle bundle = new Bundle();          Parcelable superData = super.onSaveInstanceState();          bundle.putParcelable("super_data", superData);          bundle.putParcelableArrayList("save_data", mRects);          return bundle;      }      @Override      protected void onRestoreInstanceState(Parcelable state) {          Bundle bundle = (Bundle) state;          Parcelable superData = bundle.getParcelable("super_data");          mRects = bundle.getParcelableArrayList("save_data");          super.onRestoreInstanceState(superData);      }  

3.进入sd卡选择图片的几种方式

1.    Intent localIntent = new Intent();    localIntent.setType("image/*");    localIntent.setAction("android.intent.action.GET_CONTENT");    startActivityForResult(localIntent, PHOTO_PICKED_WITH_DATA);2.    Intent localIntent = new Intent();    localIntent.setType("image/*");    localIntent.setAction("android.intent.action.GET_CONTENT");    Intent localIntent2 = Intent.createChooser(localIntent, "请选择图片");    startActivityForResult(localIntent2, PHOTO_PICKED_WITH_DATA);3.    Intent localIntent3 = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);    startActivityForResult(localIntent3, PHOTO_PICKED_WITH_DATA);
0 0
原创粉丝点击