Nam*_* Vu 36 android gravity imageview
??????????????????????????????????????????????????????????
? Linear Layout (Center) ?
? ???????????????????????????????????????????????? ?
? ? ImageView ???????????????? ? ?
? ? ? ? (Center) ? ?
? ? ? Actual image ? ? ?
? ? ? ? ? ?
? ? ? (Center) ? ? ?
? ? ? ? ? ?
? ? ???????????????? ? ?
? ???????????????????????????????????????????????? ?
? ?
??????????????????????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)
我想这样做:
??????????????????????????????????????????????????????????
? Linear Layout (Center) ?
? ???????????????????????????????????????????????? ?
? ? ImageView ? ? ? ?
? ? ? ? (Center) ? ?
? ? ? Actual image ? ? ?
? ? ? ? ? ?
? ? ? (Top) ? ? ?
? ? ? ? ? ?
? ? ???????????????? ? ?
? ???????????????????????????????????????????????? ?
? ?
??????????????????????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)
请注意:imageview具有线性布局的重心我希望imageview中的图像具有重力顶部,我尝试设置重力:顶部,但没有任何变化.帮我
编辑:这是我的xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="@color/all_white">
<LinearLayout android:id="@+id/title_bar" style="@style/TitleBar">
<TextView android:layout_width="wrap_content"
android:id="@+id/tv_printweb"
android:singleLine="true"
android:ellipsize="end"
style="@style/ScreenTitleText" />
</LinearLayout>
<RelativeLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/tv_web_filename"
android:layout_above="@+id/tv_web_page_num"
android:layout_weight="1"
android:background="@color/background">
<LinearLayout android:id="@+id/ln_web_pre"
android:layout_width="30dp"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:gravity="center">
<Button android:id="@+id/btn_web_pre"
android:layout_width="40dp"
android:layout_height="120dp"
android:background="@drawable/bt_left"
/>
</LinearLayout>
<LinearLayout android:id="@+id/ln_web_zoomview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/all_white"
android:orientation="vertical"
android:gravity="center"
android:layout_centerInParent="true">
<ImageView android:id="@+id/web_zoomview"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@color/all_white"
android:layout_gravity="top"
/>
</LinearLayout>
<LinearLayout android:id="@+id/llCircle"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:layout_marginRight="40dp"
android:layout_marginLeft="40dp"
android:layout_marginBottom="25dp"
android:layout_marginTop="25dp">
</LinearLayout>
<LinearLayout android:id="@+id/ln_web_next"
android:layout_width="30dp"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:gravity="center">
<Button android:id="@+id/btn_web_next"
android:layout_width="40dp"
android:layout_height="120dp"
android:background="@drawable/bt_right_1"
/>
</LinearLayout>
<RelativeLayout android:id="@+id/pagebar_web_top"
android:layout_width="fill_parent"
android:layout_height="30dp"
android:layout_alignParentTop="true"
android:gravity="center_vertical"
android:paddingLeft="10dip"
android:paddingRight="10dip">
<TextView android:id="@+id/tv_web_page_size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:gravity="center"
android:text="Paper Size"
android:textColor="@color/all_black"
android:textStyle="bold"
android:background="@drawable/paper_border" />
</RelativeLayout>
<RelativeLayout android:id="@+id/web_pagebar"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:gravity="left"
android:paddingLeft="10dip"
android:paddingRight="10dip">
<TextView android:id="@+id/tv_page_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center"
android:text="1/1"
android:textColor="@color/all_black"
android:textStyle="bold"
android:background="@drawable/paper_border" />
<Button android:id="@+id/btn_web_orientation"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:background="@drawable/rotate_l" />
</RelativeLayout>
</RelativeLayout>
<LinearLayout android:gravity="right|center_horizontal"
android:id="@+id/toolbar"
style="@style/FunctionBar">
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btn_web_print"
style="@style/FunctionButton"
android:text="@string/str_print" />
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
Ter*_*rel 94
在XML中设置scaleTypeto fitStart:
<ImageView
android:id="@+id/ivMap"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitStart" >
</ImageView>
Run Code Online (Sandbox Code Playgroud)
请检查Terel的答案,这被认为是正确的答案.
根据布局中的其他内容,解决方案可以是使用另一个布局(即FrameLayout相当轻的布局)来代替ImageView,并且ImageView代替实际图像android:layout_gravity="top".
您可以使用ImageView.ScaleType.MATRIX和设置图像矩阵ImageView.setImageMatrix().Matrix可以使用Matrix.setRectToRect()方法获得.