android按钮旋转,单击一个按钮在android中顺时针旋转图像

我有一个要求,我有一个ImageView和一个按钮.

我想在单击按钮时旋转图像.我需要全屏图像.但是当我点击按钮图像时会旋转,但不会在全屏显示.请参阅以下链接.

之后,当我点击按钮图像时也会旋转.但是位置已更改且未全屏显示.

我的要求是,当我点击按钮时,图像将顺时针旋转,并将全屏显示.我再次单击按钮图像必须顺时针旋转并全屏显示.同样,当我点击按钮时,图像必须旋转.

因此有人可以帮助我吗?如果你能给我一个示例代码或一个非常适合的链接.

这是我正在尝试的代码,

main.xml中

android:id="@+id/imgView"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:layout_weight="1"

android:scaleType="fitXY"

android:layout_centerHorizontal="true"

android:layout_centerVertical="true"

android:adjustViewBounds="true"

android:src="@drawable/matterhorn"

/>

android:id="@+id/btnRotate"

android:layout_width="65dp"

android:layout_height="35dp"

android:layout_gravity="bottom|left"

android:layout_marginLeft="190dp"

android:layout_marginBottom="15dp"

android:layout_weight="1"

android:background="@android:color/transparent"

android:drawableLeft="@drawable/btn_icon_rotate"

>

这是我的主要活动“MainActivity.java”

package com.imageview.rotate;

import android.os.Bundle;

import android.app.Activity;

import android.graphics.Matrix;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.ImageView;

import android.widget.ImageView.ScaleType;

public class MainActivity extends Activity implements OnClickListener{

private Button btnRotate;

private ImageView imgview;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

imgview = (ImageView) findViewById(R.id.imgView);

btnRotate = (Button) findViewById(R.id.btnRotate);

btnRotate.setOnClickListener(this);

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.btnRotate:

Matrix matrix=new Matrix();

imgview.setScaleType(ScaleType.MATRIX); //required

matrix.postRotate((float) 180f, imgview.getDrawable().getBounds().width()/2, imgview.getDrawable().getBounds().height()/2);

imgview.setImageMatrix(matrix);

break;

}

}

}

提前致谢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值