私は相対レイアウトでカスタムビューを中央に配置しようとしています。このイメージは回転するので、レイアウトの中心から外れることはありません。今は左上隅に表示されています。あなたが任意のアイデアを持っていますか私の相対的なXMLレイアウトLayoutParamsを使用してRelativeLayoutでカスタムビューを中央に配置
<RelativeLayout
android:id="@+id/lay_container"
android:layout_width="200dip"
android:layout_height="200dip"
android:layout_alignParentRight="true"
android:layout_below="@+id/txt_1"
android:layout_marginRight="45dp"
android:layout_marginTop="56dp"
android:padding="10dip" />
container = (RelativeLayout) findViewById(R.id.lay_container);
bmap = BitmapFactory.decodeResource(this.getResources(), R.drawable.charlie_sheen);
rotate_view = new RotationView(this, bmap);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.CENTER_IN_PARENT);
rotate_view.setLayoutParams(params);
container.addView(rotate_view);
ここにある:ここに私のコードはありますか?私はこの仮説にはおそらく単純な解決策があることを知っていますが、私は答えを見つけることができません。 LayoutParameterを中央に設定すると、レイアウトをレイアウトの中心に合わせる必要がありますか?
ご協力いただきありがとうございました。
彼はDevunwired、あなたの助けに感謝します。私はあなたの提案を試みました、そして、私はまだ同じ問題を抱えています。私はビットマップよりも100px大きいため、カスタムビュークラスのonMeasureをオーバーライドしました。 (ビットマップは回転するため、これを実行するためのスペースが必要です)。私は回答にコードを掲載しました。私はいくつかの他のアイデアを持っていた: - 私は私のカスタムレイアウトをカスタムビューとしてカスタムビューを追加しようとすると、それを膨らませることができると思った – user1164429
イメージが 'RotationView'の中にセンタリングされていることを確認できますか?これを行う最も簡単な方法は、カスタムビューに背景色を付けることです。そのため、境界線が実際に親との関係にあるかどうかを確認できます。私は問題が 'RotationView'のどこかにあると考えています。 – Devunwired