私はそれを持っていimageView
て、それと同じくらいマージントップをマイナスしようとしていますheight / 2
。私はプログラムでそれを行うことができますが、xmlでもandorid published percentrelative layoutでも可能でしょうか。私はそれを行う方法がわからない、または可能ですか?
質問する
75 次
1 に答える
0
--編集: @aga が示唆するように、Percent Support Libraryを介してそれを達成する方法があるようです--
アプリケーション全体でこのタイプをimageView
より頻繁に使用する場合は、imageview を拡張して、マージンコードを onMeasure 内に配置できます。
public class HalfMarginImageView extends ImageView {
public HalfMarginImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
((ViewGroup.MarginLayoutParams) getLayoutParams()).topMargin = -getMeasuredHeight() / 2;
}
}
これを機能させるには、ビューが ViewGroup の一部である必要があります。また、AttributeSet でコンストラクターを使用していることを確認してください。次に、レイアウト xml に CustomView を含め、それを選択HalfMarginImageView
して通常の imageView として使用します。
于 2015-08-21T10:05:38.883 に答える