设置图片大小和旋转

xml

<ImageView
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@drawable/left"
android:scaleType="fitCenter"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="拖动改变图片大小"
android:textSize="30px"
/>
<SeekBar
android:id="@+id/sb"
android:layout_width="match_parent"
android:layout_height="wrap_content"

/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="拖动旋转图片"
android:textSize="30px"
/>
<SeekBar
android:id="@+id/sb1"
android:layout_width="match_parent"
android:layout_height="wrap_content"

/>
有两个seekbar
sb实现setOnSeekBarChangeListener(this);接口
sb1实现setOnSeekBarChangeListener(this);接口
拖动滚动条来缩放的思想是这样的,首先要把sb的最大值设置成屏幕宽度
然后通过拖动的返回值来改变imagview容器的大小就可以改变图片的大小
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm); //获得屏幕的宽度
int w = dm.widthPixels;
sb.setMax(w); //设置sb的最大值

拖动滚动条来旋转的思想首先要声明一个Matrix matrix = new Matrix();

对图片的操作都用这个类。设置他旋转的度数,然后装载资源,创建一个旋转后的图片
将这个图片设置成旋转之后的图片。
对图片的旋转并不是真的让这个图片旋转,而是新或得一个图片然后让这个图片旋转,把这个旋转后的图片替换成img

就会重写里面的方法 对象 拖动值
public void onProgressChanged(SeekBar seekbar, int pro, boolean arg2) {
int a=seekbar.getId;
switch(a)
case R.id.sb:
int w = pro;
int h = pro*3/4;
LinearLayout.LayoutParams pra = new LinearLayout.LayoutParams(w, h);
img.setLayoutParams(pra);
break;

case R.id.sb1:
matrix.setRotate(pro);
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.left);
Bitmap bit = bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth(),
bitmap.getHeight(), matrix, true);//创建一个旋转后的图片,返回值为bitmap要创建一个新的 bitmap来接收
img.setImageBitmap(bit); 将旋转后的图片替换成这个图片
break;

}

时间: 2024-10-22 22:17:50

设置图片大小和旋转的相关文章

word使用宏命令批量按比例设置图片大小

1,单击文件 2. 3.如下图,最后确定 4.如图 5.在弹出框中点击创建, 6.将宏命令copy到命令窗口中并点击运行即可,也无需保存 注意,n需要替换为实际值:如15 代码中单位厘米 (1)设置固定大小n厘米: Sub resetImgSize() Dim iShape As InlineShape For Each iShape In ActiveDocument.InlineShapes iShape.LockAspectRatio = msoTrue iShape.Height = C

图片上传 自定义设置图片大小

if($_FILES['img_slide']['name']=="") { $phpto_dir_name=""; header("Content-type:text/html;charset=utf-8"); echo "没有选择上传图片"; return $this->getDefaultView(); }else{ //将临时文件复制到upload_image目录下 $img_slide=($_FILES['im

Android代码中动态设置图片的大小(自动缩放),位置

项目中需要用到在代码中动态调整图片的位置和设置图片大小,能自动缩放图片,用ImageView控件,具体做法如下: 1.布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"

设置BottomNavigationBar导航栏的间距和文字,图片大小

找了好久都没有找到怎么设置导航栏的文字大小和图片大小.后来朋友给推荐使用反射的方式很好用.特意保存下来,以备不时之需. 朋友博客地址 private void setBottomNavigationItem(int space, int imgLen) { float contentLen = 36; Class barClass = bottomNavigationBar.getClass(); Field[] fields = barClass.getDeclaredFields(); fo

android textview在code(代码)中设置图片 和XML设置图片

给大家提供一些方法,大家可以直接拿去使用,textview在code{代码}中设置上下左右设置图片.有几种方法,这个给大家列举一些. 下面方法建议放在util工具类中,其中的好处就不用我多讲了. ,//资源ID public static void setTextDrawable(Context context, int drawableRes,//资源ID   TextView tvName) {  Drawable drawableTop = context.getResources().g

动画效果-基础动画设置(改变大小,改变透明度,翻转,旋转,复原)

在可视化编程下 #import "BaseViewController.h" @interface BaseViewController () @property (weak, nonatomic) IBOutlet UIImageView *imageView; @end @implementation BaseViewController - (void)viewDidLoad { [super viewDidLoad]; } - (void)didReceiveMemoryWar

Android -- ImageView(控制图片的大小以及旋转的角度)

1.  2.   实现代码 package com.example.myimageview3; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.Matrix; import android.graphics.drawable.BitmapDrawable; import android.os.Bundle; import android.util.DisplayMetrics

Discuz升级!图片查看插件(支持鼠标缩放、实际大小、旋转、下载)

图片查看是网站中的常用功能,用于展示详细的图片.在discuz图片插件的基础上进行了改造,因此这篇文章主要从以下几个方面来讨论图片查看插件.希望可以帮助到大家,有不对的地方也欢迎大家给以正确的指导. (1)discuz的实现过程及效果 (2)discuz的局限性 (3)discuz的改进步骤 (4)兼容性及最后效果 (5)总结(常见问题) demo示例:http://zyk3.ataw.cn/discuz/index.html 一.discuz的实现过程及效果 点击图片,弹出层有大图,同时有在新

ImageView设置点击效果没有用?ImageView src的图片大小改变不了?

ImageView设置点击效果没有用? 解决 1.ImageView xml里面必须clickable 和longClickable为true <ImageView android:layout_width="@dimen/x90" android:layout_height="@dimen/x90" android:padding="@dimen/x26" android:layout_gravity="right|center