こんにちは、クリックすると各画像が異なる画像を表示する4つの画像を表示するアクティビティを追加しようとしています(正方形を四分の一に切ったと想像してください)。画像ボタンを使用していくつかのレイアウトを試してみましたが、役に立ちませんでした。画像ページャーを使用したグリッドビューですが、これを実装すると、グリッドビューで小さな画像がかなり離れて表示されますが、もっと良い方法はありますか?
質問する
136 次
2 に答える
0
RelativeLayout を使用して ImageButtons を追加し、ボタンの位置やサイズなどをすべて制御できます。
別の見方として、画面を 4 つの長方形 (Rects) に分割します。このようなもの :
Rect upLeftRect = new Rect(0,0,screenWidth/2 , screenHeight/2);
Rect upRightRect = new Rect(screenWidth/2,0,screenWidth,screenHeight/2);
Rect downLeftRect = new Rect(0,screenHeight/2, screenWidth/2 , screenHeight);
Rect downRightRect = new Rect(screenWidth/2, screenHeight/2, screenWidth,screenHeight);
次に、コンストラクターで次のように、relativeLayout に onTouchListener をアタッチします。
yourRelativeLayout.setOnTouchListener(this);
そして最後に、 onTouch メソッド内には次のようなものがあります:
@Override
public boolean onTouch(View v, MotionEvent e){
if(upLeftRect.contains( ( int ) e.getX(), (int) e.getY){
// do whatever you want, i guess that you want some alpha animation or something like this
}else if(upRightRect.contains( (int) e.getX(), (int) e.getY(){
// bla bla.. :)
} // do the rest conditions your self!!
それが役に立ったことを願っています!
于 2013-10-02T14:54:07.120 に答える