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));
// 上面的“-”负号表示对应的属性值为false
stalistDrawable.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));
// normal
stalistDrawable.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;
}