2

マップを操作していて、レイアウトファイルからDrawableオブジェクトとしてマーカーを作成しようとしています。ポイントの種類に応じてマーカービューを変更する必要があるため、最初の画像を静的として宣言し、2番目の画像を動的(動的に変更)として宣言しましたが、機能していません。

私のレイアウトファイル

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  <ImageView
    android:id="@+id/marker"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/marker" >
  </ImageView>

  <ImageView
    android:id="@+id/category"
    android:layout_width="10dp"
    android:layout_height="10dp"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:src="@drawable/category_for_children" />
</RelativeLayout>

私のコード:

Resources res = getResources();
try {
  marker = Drawable.createFromXml(res, res.getXml(R.layout.marker_on_map));
} catch (NotFoundException e) {
  e.printStackTrace();
} catch (XmlPullParserException e) {
  e.printStackTrace();
} catch (IOException e) {
  e.printStackTrace();
}
4

1 に答える 1

4

Drawable.createFromXmlロード用LayoutsまたはViewドローアブル用ではありません!! その使用法の次のサンプルを参照してください。

http://spearhend.blogspot.com/2012/04/load-android-drawable-from-xml.html

于 2013-01-20T01:45:31.403 に答える