Ron*_*Ron 12 java android position android-linearlayout layout-gravity
我有以下问题:我实现了一个HorizontalScrollView
包含一个案例a LinearLayout
和一个ImageView
.在这种情况下,图像大约是屏幕宽度的50%.所以我想把它集中在一起.不幸的是,我找到它的唯一方法是,使用layout_gravity="center"
它LinearLayout
.
这是我的xml:
<HorizontalScrollView
android:layout_gravity="center"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:src="@drawable/myImg"
android:layout_width="wrap_content"
android:adjustViewBounds="true"
android:layout_height="150dp"/>
</LinearLayout>
</HorizontalScrollView>
Run Code Online (Sandbox Code Playgroud)
但我需要以layout_gravity
编程方式设置.有没有人知道如何实现这一目标或知道不同的方式?我通过Google发现的所有内容都不适用于我这样的帖子.
谢谢!
Vip*_*hit 34
做这样的事情:
LayoutParams lp = new LayoutParams();
lp.gravity= Gravity.CENTER_HORIZONTAL;
myImg.setLayoutParams(lp);
Run Code Online (Sandbox Code Playgroud)
更新: 另一种方法:
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.weight = 1.0f;
params.gravity = Gravity.CENTER;
imageView.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)
把这个ImageView
放在FrameLayout
这样的:
删除了额外的代码
ImageView image = new ImageView(mContext);
image.setLayoutParams(new FrameLayout.LayoutParams(width, height, gravity));
Run Code Online (Sandbox Code Playgroud)
更多信息在这里.
归档时间: |
|
查看次数: |
49908 次 |
最近记录: |