当前位置: 代码迷 >> 综合 >> Android 代码创建selector 已经android 裁剪图片
  详细解决方案

Android 代码创建selector 已经android 裁剪图片

热度:67   发布时间:2024-01-21 15:50:05.0

UC的底部栏居然是用一个图片实现的 难道是 javame的遗风??


好坏需要测试才知道 但是 如果想实现这一的可以裁剪图片 然后要用代码写selector

	/*** 创建一个selector* * @param drawable* @return*/private StateListDrawable getDrawableList(Drawable drawable) {StateListDrawable stalistDrawable = new StateListDrawable();int pressed = android.R.attr.state_pressed;int window_focused = android.R.attr.state_window_focused;int focused = android.R.attr.state_focused;int selected = android.R.attr.state_selected;stalistDrawable.addState(new int[] { pressed, window_focused },activity.getResources().getDrawable(R.drawable.toolbar_menu_selected));// 上面的“-”负号表示对应的属性值为falsestalistDrawable.addState(new int[] { pressed, -focused }, activity.getResources().getDrawable(R.drawable.toolbar_menu_selected));stalistDrawable.addState(new int[] { selected }, activity.getResources().getDrawable(R.drawable.toolbar_menu_selected));stalistDrawable.addState(new int[] { focused }, activity.getResources().getDrawable(R.drawable.toolbar_menu_selected));// normalstalistDrawable.addState(new int[] {}, drawable);return stalistDrawable;}/*** 裁剪图片* * @param index* @param res* @return*/private Drawable clipBottomImage(int index, int res) {Bitmap bitmap = BitmapFactory.decodeResource(activity.getResources(),res);int width = bitmap.getWidth() / 11;int x = index * width;int y = 0;bitmap = Bitmap.createBitmap(bitmap, x, y, width, bitmap.getHeight());Drawable drawable = new BitmapDrawable(activity.getResources(), bitmap);return drawable;}


  相关解决方案