1

次のようなビューの階層があります。

BiggerView extends ViewGroup
      |
      |
      |----------------------MyImageView extends ImageView 

BiggerViewと同じ大きさで、ユーザーが を押した位置に2 つの小さな画像を配置MyImageViewする必要があります。これらの 2 つの小さな画像は、 の上で移動/ドラッグできます。この問題には 2 つの部分があります。MyImageViewlongPressMyImageView

  1. この 2 つの画像を重ねる方法MyImageView。以前は Absolute Layout がこれに対する 1 つのソリューションであったことは知っていますが、現在はあまりお勧めできません。これらの画像をドローアブルとして描画しても、これら 2 つの画像でジェスチャ コントロール イベントが得られない場合があります。

  2. これらの 2 つのイメージを に配置した後MyImageViewonMoveイベントでこれらの画像を移動するには、どのようなアプローチに従う必要がありますか? 新しい dX と dY でレイアウト メソッドを呼び出すだけでよいですか?

4

3 に答える 3

1

相対レイアウトを使用すると、画像をうまく重ねることができます。

于 2012-10-26T06:12:13.253 に答える
0

framelayoutを使用すると、一方の画像をもう一方の画像の上に配置できます。次に、表示するように設定する画像に応じて、Javaで可視性を設定できます。

于 2012-10-26T06:17:07.783 に答える
0

を。RelativeLayout新しいを使用ImageViewして、コンテナーに対してオーバーラップするように配置できますMyImageView

b. を使用Animationして画像を移動できます。http://developer.android.com/guide/topics/graphics/prop-animation.html

于 2012-10-26T06:22:21.070 に答える