如何旋转ImageView并自动调整其大小?

时间:2016-09-09 01:27:40

标签: android xml

图像1没有旋转,当我旋转ImageView时我想要图像3,但是显示图像2之类的东西。如何让ImageView自动更改尺寸?
我的猜测是旋转后,ImageView的宽度和高度会保留,我不希望这样 附:我不想改变布局的方向
这是图片(矩形是电话,人是图像视图)

这是我的xml

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:id="@+id/page">

    <ImageView
        android:scaleType="centerInside" 
        android:layout_height="wrap_content" 
        android:layout_width="wrap_content"
        android:id="@+id/character" 
        android:rotation="90"
     />
    </FrameLayout>
<!-- I tried all scaleTypes, and set height/width to fill_parent, wrap_content,and match_parent nothing worked-->

任何帮助表示赞赏。谢谢!

2 个答案:

答案 0 :(得分:0)

试试这个:

<ImageView
    android:scaleType="fitCenter" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content"
    android:id="@+id/character"
    android:adjustViewBounds="true" 
    android:rotation="90"
 />

编辑:

 android:adjustViewBounds="true" 

会设置scaleType="fitCenter",所以我认为您应该尝试scaleTypeadjustBounds,而不是两者。

 <ImageView
    android:scaleType="fitCenter" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content"
    android:id="@+id/character"
    android:rotation="90"
 />

答案 1 :(得分:0)

删除app:switchMinWidth="70dp"并使用scaleType fitCenter 。它应该工作。试试这个:

$('.selector').hover(function(){
    // Cleanup / Reset to default position
    $('.selector').removeClass('clicked');
    $('.selector').css('text-decoration', 'none');

    $('.selector').not(this).each(function() {
        $(this).css('text-decoration', 'line-through');
    });
}, function() {
    if(!$(this).hasClass('clicked'))
    {
        $('.selector').not(this).each(function() {
            $(this).css('text-decoration', 'none');
        });
    }    
});
$('.selector').click(function(evt) {
    $('.selector').not(this).each(function() {
        $(this).css('text-decoration', 'line-through');
   });
   $(this).addClass('clicked');
});
$('body').click(function(evt) {
    if(!$(evt.target).hasClass('clicked')) {
        $('.selector').css('text-decoration', 'none');
   }

});