【发布时间】:2011-06-10 12:52:11
【问题描述】:
我想要做的如下: 我有一组 Drawable(例如 16 个),我必须以不同的方式组合(带有 1、2、3 或 4 个 Drawable 的图标),具体取决于业务逻辑。我的想法是在里面定义带有 ImageViews 的 RelativeLayouts。不幸的是,我计划将这些布局作为一个 OverlayItem(需要一个 Drawable)在 MapView 上显示它们。我认为任何布局都是可绘制的,但事实并非如此。我找不到将这个 RelativeLayout 转换为可绘制对象的方法。我真的不明白主要区别。可以绘制任何视图不是吗? 我可以将多个 Drawable 组合成一个吗?我真的是 2D 图形的初学者,不知道如何解决这个问题。任何想法表示赞赏
添加: 基于第一个答案的代码示例:
public class MapViewActivity extends MapActivity {
MapView mMapView;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.map_view);
mMapView = (MapView)findViewById(R.id.mapview);
mMapView.setBuiltInZoomControls(true);
List<Overlay> mapOverlays = mMapView.getOverlays();
Drawable drawable = this.getResources().getDrawable(R.drawable.one_drawable);
//this is where exception is thrown
}
}
文件 one_drawable.xml 如下所示:
<?xml version="1.0" encoding="utf-8"?>
<layer-list
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/item_one"
android:top="0dip"
android:right="0dip"
android:bottom="0dip"
android:left="0dip"/>
</layer-list>
所以我看不到任何错误(我在我的程序中以编程方式设置了可绘制对象)
编辑 2: 好的,我不允许这样做。我要设置一个drawable,以后可以交换
【问题讨论】:
标签: android layout graphics view drawable