次のサンプルは Android 4.1 で動作しますが、Android 2.3 では左右のインセットは変更されません。この動作の理由は何ですか?
public class MyFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.badges_fragment_layout, container, false);
view.setBackgroundDrawable(getCustomDrawable());
return view;
}
private Drawable getCustomDrawable() {
LayerDrawable layerDrawable = new LayerDrawable(new Drawable[]{getBottom(), getTop()});
layerDrawable.setLayerInset(1, 5, 0, 5, 0);
return layerDrawable.mutate();
}
private Drawable getTop() {
return new ColorDrawable(Color.parseColor("#ffffff"));
}
private Drawable getBottom() {
return new ColorDrawable(Color.parseColor("#ff0000));
}