1

画面に2枚のPNG画像を描画する方法を知りたいのですが。

私のXMLレイアウト:(paperxml.xmlという名前)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layoutid"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"  >

    <ImageView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/paperid"
        android:src="@drawable/paperrepresentation"
    />

    <ImageView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/rockid"
        android:src="@drawable/rockrepresentation"
        android:layout_alignTop="@id/paperid"
    />

</RelativeLayout>

XMLレイアウトをインスタンス化し、両方のImageViewを同時に画面に表示するJavaコードは何でしょうか。呼び出すだけsetContentView(R.drawable.paperxml);で、起動時にアプリケーションがクラッシュします。

4

3 に答える 3

2

xmlを次のように置き換えます。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layoutid"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"  >

    <ImageView android:id="@+id/paperid"
        android:src="@drawable/paperrepresentation"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

    <ImageView android:id="@+id/rockid"
        android:src="@drawable/rockrepresentation"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

</LinearLayout>

説明:

  • RelativeLayoutを使用しません android:orientation="vertical"
  • android:layout_widthすべてのビューにはとが必要android:layout_heightです。
  • xmlns:android最初の要素だけに物を追加します。
于 2010-07-12T23:01:18.333 に答える
1

呼び出しsetContentView(R.drawable.paperxml);てもコードがクラッシュすることはありません。これはXMLファイルです。マッカースはあなたの問題に対する正しい答えを持っており、あなたのコードを同じに保ちます!

XMLを設定し、さまざまなViewオブジェクトを使用する例については、 Viewチュートリアルを参照することもできます。

于 2010-07-12T23:07:24.623 に答える
0

XMLを挿入しましたが、ImageViewが1つしか表示されません。これが私が撮ったエミュレーターのスクリーンショットです。i852.photobucket.com/albums/ab87/thomasjakway1/Capture.png表示されているファイルはpaperrepresentationであることに言及する価値があります

よく見ると、下部に2番目の非常に小さな画像があることがわかります。スケールを大きくするだけです。

于 2010-11-21T03:36:19.990 に答える