未使用 FrameLayout 在中心设置图像对齐

Image alligned not set in Center using FrameLayout

我正在尝试从中学习 FrameLayout tutorial

http://javatechig.com/android/android-framelayout-example

它在 FrameLayout 中添加一个 imageView 并尝试使图像与

居中
    android:scaleType="centerCrop"

但它不起作用
图片显示是这样的

这里是activity_main.xml

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:scaleType="centerCrop"
        android:src="@drawable/ic_launcher" />

        </FrameLayout>

这里是class文件

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

是否需要替换某些新属性??
图片在相对布局中对齐良好,但在框架中不对齐 layout.Any 建议 ?

将布局引力设置为 imageView。

 android:layout_gravity="center"

取决于你的要求你可以给"layout_gravity"喜欢:

center_vertical or center_horizontal. 

scaleType 不是指图像在其父布局中的放置方式,而是指如何将图像放置在其边界布局中。见 ScaleType link

如果您想调整对齐方式,如左对齐、下对齐或居中对齐,您可以在 ImageView 中使用 android:layout_gravity 或在其父布局中设置 android:gravity

试试这个

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:scaleType="centerCrop"
    android:src="@drawable/ic_launcher" />

@user3734952:仅供参考

android:layout_gravity="center"

是布局参数。并非所有视图组都支持此布局参数。请参阅文档以了解特定视图组支持哪些布局参数。线性布局支持 android:layout_gravity 布局 Param.Place 对象在垂直和水平轴的容器中心,不改变其大小。

为了获得更好的方法,请添加 android:adjustViewBounds="true"。如果您希望 ImageView 调整其边界以保持其可绘制对象的纵横比,请将其设置为 true。