2012-03-04 4 views
2

Androidでレイアウトすると、かなり困惑しています。 私はゆっくりと、私がZoomButtonsControllerを利用したいカスタムImageViewを実装しています。 しかし、ズームボタンがレイアウト内でどこに配置されるかを決めたいので、デフォルトの下部中央の位置からズームボタンを移動する方法を理解できません。ZoomButtonsControllerをカスタムImageViewに配置するにはどうすればよいですか?

私は、主なアクティビティのボタンなどの簡単なビューをレイアウトすることを実験しています。これは、私が推測して期待するように機能しているようです。 ZoomButtonsControllerの場合、私はそれらを再配置したいと思います。メールレイアウトとしてRelativeLayoutを使用し、ZoomButtonsControllerをカスタムImageView内に追加しています。

アクティビティコード

public class ImageViewActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     CustomImageView imageView = new CustomImageView(this); 
     relativeLayout.addView(imageView); 
    } 
} 

CustomImageViewコード

public class CustomImageView extends ImageView { 
    private ZoomButtonsController mZoomButtons; 

    public CustomImageView(Context context) { 
     super(context); 
     RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.FILL_PARENT, RelativeLayout.LayoutParams.FILL_PARENT); 
     mZoomButtons = new ZoomButtonsController(this); 
     mZoomButtons.getZoomControls(); 
     layoutParams.addRule(RelativeLayout.ALIGN_PARENT_TOP); 
     layoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL); 
     setLayoutParams(layoutParams); 
    } 

    @Override 
    public boolean onTouchEvent(MotionEvent ev) { 
     Log.d("TAG", "touch"); 
     mZoomButtons.setVisible(true); 
     return true; 
    } 
} 

私はパラメータにWRAP_CONTENTでテストしてみたが、これが唯一のボタンが消えてズームします。

+0

[設定Android ZoomButtonsControllerアラインメント](http://stackoverflow.com/questions/7294598/set-android-zoombuttonscontroller-alignment)に従って、レイアウト内のズームボタンを定義することができます – k3b

答えて

1

実際、私はZoomButtonsControllerの位置を決めることができず、最終的にはデフォルトの配置を受け入れる必要がありました。