diff --git a/graffiti/src/main/java/cn/hzw/graffiti/GraffitiActivity.java b/graffiti/src/main/java/cn/hzw/graffiti/GraffitiActivity.java index e3bb380dd6662ecdf7bd8920ed1ecd8c55e829be..4693d05ffc582f309909dfb1ffab47be20b1588f 100644 --- a/graffiti/src/main/java/cn/hzw/graffiti/GraffitiActivity.java +++ b/graffiti/src/main/java/cn/hzw/graffiti/GraffitiActivity.java @@ -459,6 +459,7 @@ public class GraffitiActivity extends Activity { findViewById(R.id.btn_undo).setOnClickListener(mOnClickListener); findViewById(R.id.graffiti_selectable_edit).setOnClickListener(mOnClickListener); findViewById(R.id.graffiti_selectable_remove).setOnClickListener(mOnClickListener); + findViewById(R.id.graffiti_selectable_top).setOnClickListener(mOnClickListener); mShapeModeContainer = findViewById(R.id.bar_shape_mode); mSelectedTextEditContainer = findViewById(R.id.graffiti_selectable_edit_container); mEditContainer = findViewById(R.id.graffiti_edit_container); @@ -800,6 +801,9 @@ public class GraffitiActivity extends Activity { } else if (v.getId() == R.id.graffiti_selectable_remove) { mGraffitiView.removeSelectedItem(); mDone = true; + } else if (v.getId() == R.id.graffiti_selectable_top) { + mGraffitiView.topSelectedItem(); + mDone = true; } if (mDone) { return; diff --git a/graffiti/src/main/java/cn/hzw/graffiti/GraffitiView.java b/graffiti/src/main/java/cn/hzw/graffiti/GraffitiView.java index 8ce0567ef2a62c91ae98619839627f70e249a4d6..2659192c28a73a3cbb6abf7f23728587a88304ee 100644 --- a/graffiti/src/main/java/cn/hzw/graffiti/GraffitiView.java +++ b/graffiti/src/main/java/cn/hzw/graffiti/GraffitiView.java @@ -791,6 +791,12 @@ public class GraffitiView extends View { mUndoStack.remove(item); } + public final void topSelectableItem(GraffitiSelectableItem item) { + removeSelectableItem(item); + mSelectableStack.add(item); + mUndoStack.add(item); + } + private void initCanvas() { if (mGraffitiBitmap != null) { mGraffitiBitmap.recycle(); @@ -1205,6 +1211,14 @@ public class GraffitiView extends View { invalidate(); } + public void topSelectedItem() { + if (mSelectedItem == null) { + throw new NullPointerException("Selected item is null!"); + } + topSelectableItem(mSelectedItem); + invalidate(); + } + public float getOriginalPivotX() { return mOriginalPivotX; } diff --git a/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageLoader.java b/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageLoader.java index 13526c58dfe51c59aba948bca95ccd07cb82232f..0a30d6a127344ef3d6969c7397e2e6c8f7e028d3 100644 --- a/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageLoader.java +++ b/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageLoader.java @@ -38,7 +38,7 @@ public class ImageLoader { mImageLoaderGroup = new ImageLoaderGroup(context, memoryCacheSize, 25 * 1024 * 1024); mImageLoaderGroup.addImageLoader(new LocalImagerLoader(context)); ImageLoaderConfig config = mImageLoaderGroup.getImageLoaderConfig(); - config.setLoadingDrawable(context.getResources().getDrawable(R.drawable.imageselector_loading)); + config.setLoadingDrawable(context.getResources().getDrawable(R.drawable.graffit_imageselector_loading)); config.setLoadFailedDrawable(new ColorDrawable(Color.RED)); } diff --git a/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorAdapter.java b/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorAdapter.java index 634ac022c266c4407a89994a36f6ba8f69e454de..fcc8402a98c30376a58ff7825b9ade548d51ad23 100644 --- a/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorAdapter.java +++ b/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorAdapter.java @@ -73,7 +73,7 @@ public class ImageSelectorAdapter extends BaseAdapter { public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) { - convertView = View.inflate(mContext, R.layout.imageselector_item, null); + convertView = View.inflate(mContext, R.layout.graffiti_imageselector_item, null); holder = new ViewHolder(); holder.mImage = (ImageView) convertView.findViewById(R.id.image); holder.mImageSelected = (ImageView) convertView.findViewById(R.id.image_selected); diff --git a/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorView.java b/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorView.java index 4719810ff5cd78cf66218eb7a2db73b7eba588dd..6a2ea373742a13dcf47d86f8aba2f032d3404990 100644 --- a/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorView.java +++ b/graffiti/src/main/java/cn/hzw/graffiti/imagepicker/ImageSelectorView.java @@ -54,7 +54,7 @@ public class ImageSelectorView extends FrameLayout implements View.OnClickListen public ImageSelectorView(Context context, boolean isMultipleChoice, int maxCount, final List pathList, ImageSelectorListener listener) { super(context); - View view = LayoutInflater.from(getContext()).inflate(R.layout.activity_image_selector, null); + View view = LayoutInflater.from(getContext()).inflate(R.layout.graffit_layout_image_selector, null); addView(view, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); mIsMultipleChoice = isMultipleChoice; diff --git a/graffiti/src/main/res/drawable-xxhdpi/imageselector_loading.9.png b/graffiti/src/main/res/drawable-xxhdpi/graffit_imageselector_loading.9.png similarity index 100% rename from graffiti/src/main/res/drawable-xxhdpi/imageselector_loading.9.png rename to graffiti/src/main/res/drawable-xxhdpi/graffit_imageselector_loading.9.png diff --git a/graffiti/src/main/res/drawable-xxhdpi/imageselector_image_selected.png b/graffiti/src/main/res/drawable-xxhdpi/graffiti_imageselector_image_selected.png similarity index 100% rename from graffiti/src/main/res/drawable-xxhdpi/imageselector_image_selected.png rename to graffiti/src/main/res/drawable-xxhdpi/graffiti_imageselector_image_selected.png diff --git a/graffiti/src/main/res/layout/activity_image_selector.xml b/graffiti/src/main/res/layout/graffit_layout_image_selector.xml similarity index 100% rename from graffiti/src/main/res/layout/activity_image_selector.xml rename to graffiti/src/main/res/layout/graffit_layout_image_selector.xml diff --git a/graffiti/src/main/res/layout/imageselector_item.xml b/graffiti/src/main/res/layout/graffiti_imageselector_item.xml similarity index 91% rename from graffiti/src/main/res/layout/imageselector_item.xml rename to graffiti/src/main/res/layout/graffiti_imageselector_item.xml index 9c714b2008a23938617f205f40acc1517aea82a9..cb15f9cfb5dd6dad780ef1ef75a2b2183166182e 100644 --- a/graffiti/src/main/res/layout/imageselector_item.xml +++ b/graffiti/src/main/res/layout/graffiti_imageselector_item.xml @@ -21,6 +21,6 @@ android:layout_marginRight="10dp" android:layout_marginTop="10dp" android:scaleType="fitXY" - android:src="@drawable/imageselector_image_selected" + android:src="@drawable/graffiti_imageselector_image_selected" /> \ No newline at end of file diff --git a/graffiti/src/main/res/layout/layout_graffiti.xml b/graffiti/src/main/res/layout/layout_graffiti.xml index 438563694912cdfc7ed7a75e99b0609056fffb55..fc5b25afce4a5f807f349b4bb157eca2b5bde05c 100644 --- a/graffiti/src/main/res/layout/layout_graffiti.xml +++ b/graffiti/src/main/res/layout/layout_graffiti.xml @@ -381,7 +381,18 @@ android:layout_weight="1" android:background="@drawable/graffiti_btn_effect_rect_pressed_black" android:gravity="center" - android:text="编辑" + android:text="@string/graffiti_edit" + android:textColor="#ffffff" + android:textSize="16dp"/> + + @@ -392,7 +403,7 @@ android:layout_weight="1" android:background="@drawable/graffiti_btn_effect_rect_pressed_black" android:gravity="center" - android:text="移除" + android:text="@string/graffiti_remove" android:textColor="#ffffff" android:textSize="16dp"/> diff --git a/graffiti/src/main/res/values/strings.xml b/graffiti/src/main/res/values/strings.xml index dcad12dac8f700225614cfb73db704054966ea72..2b2c78b5dae8a8752996396829fb334f0526df65 100644 --- a/graffiti/src/main/res/values/strings.xml +++ b/graffiti/src/main/res/values/strings.xml @@ -9,4 +9,8 @@ 取消 成功 失败 + + 编辑 + 移除 + 置顶