Articles of 缩放

更改MapView中的缩放控件

我想在我的应用程序中更改缩放控件的预定义样式,使其显示为谷歌地图应用程序中的新缩放控件。 见下文: 我该怎么做? 我一直在四处寻找,但我没有find任何东西。 提前致谢。

Android webview捏缩放问题

你好guyz我能够在webview中缩小图像,使其正常工作。 放大工作正常,但问题是缩小。 图像变得小而小。 如何限制缩小到图像的大小?

Android MapView – 自定义缩放按钮

你知道吗,如果有办法如何在Android的mapView中制作自定义缩放按钮? 或者只有预制变焦控制? 谢谢 Hmyzak

canvas.scale(mScaleFactor,mScaleFactor,detector.getFocusX(),detector.getFocusY())拖动限制搞乱?

我试图通过谷歌搜索开发一个自定义的ImageView ,在这里搜索SO。 除非我尝试使用mdetector.getFocusX()和mdetector.getFocusY()缩放canvas,否则一切正常。 缩放正常,但拖动计算搞砸了。 当我在下面的代码中使用canvas.scale(mScaleFactor,mScaleFactor,gx,gy)时,会在整个地方发生拖动,并且可以看到后面的黑屏。 我想限制拖动到屏幕边界。 在我的代码中,绑定计算适用于放大,当canvas.scale(mScaleFactor,mScaleFactor)即:它在不使用轴点从(0,0)缩放时正常工作。 这是代码: import android.content.Context; import android.graphics.Canvas; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; import android.view.ScaleGestureDetector; import android.view.View; import android.widget.ImageView; /* @description : Custom View Zoom * */ public class ZoomView extends ImageView { // Maximum and Minimum Zoom private static float MIN_ZOOM = 1.0f; private static float MAX_ZOOM = 3.0f; […]

使用MediaPlayer使video适合TextureView(部分视图在外部(不可见))

我正在使用MediaPlayer在TextureView中播放video。 TextureView具有固定大小,video大小不同。 它播放video,但问题是video的一部分在外面,video没有按比例缩小以适应TextureView。 黑色矩形+照片(video)是TextureView。 红色矩形是实际的video,我画了它来显示问题。 因此它只显示video的一部分而不显示其余部分。 我希望所有video都可见,并保持原始比例。 谢谢。 // The class implements SurfaceTextureListener // Set TextureView to MediaPlayer m_TextureView.setSurfaceTextureListener(this); @Override public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int width, int height) { m_MediaPlayer = new MediaPlayer(); m_MediaPlayer.setSurface(new Surface(surfaceTexture)); } // Play video m_MediaPlayer.reset(); m_MediaPlayer.setDataSource(videoFilePath); m_MediaPlayer.prepare(); m_MediaPlayer.start();

如何根据Android上的缩放级别调整标记图标大小

我在地图上添加了几个标记,我希望他们在放大或缩小时调整图标大小。 怎么做? 这是我的代码: map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap(); if (map!=null) { map.getUiSettings().setCompassEnabled(true); map.setTrafficEnabled(true); map.setMyLocationEnabled(true); map.moveCamera(CameraUpdateFactory.newLatLngZoom(defaultLatLng, zoomLevel)); this.addMarkers(new MarkerOptions()); 这是我的addMarkers方法: public void addMarkers(MarkerOptions mo) { db = new Database(this); SQLiteDatabase dbRead = db.getReadableDatabase(); String[] columns = {“title”, “addr”, “lat”, “lon”}; Cursor result = dbRead.query(“people”, columns, null, null, null, null, null); while(result.moveToNext()){ String person = result.getString(0); String address […]

缩放位图保持图层列表中的宽高比

我正在尝试创建一个由渐变构成的背景可绘制,该渐变填充整个视图,并且左重力的图案resize以垂直适合,同时保持其纵横比。 这就是我目前所拥有的: 两个drawable都是VectorDrawables。 这是wrap_content高度视图的背景。 这不会调整模式的大小,而是将其垂直居中。 如果我将重力设置为fill_vertical ,它只会在该轴上resize并且宽高比会中断。 有没有办法在不使用ImageViews或其他布局的情况下在XML中实现这一点? 可以以编程方式完成吗? 或者我需要不同的布局?

在带有文本的按钮中缩放drawableLeft

我有一个带文字的按钮和左边的抽屉。 有没有什么办法可以让它在适当的尺寸(填充按钮的高度)上同时保持其纵横比? 我的布局相关摘录:

缩放位图以适合canvas

我试图在机器人上写一个游戏,我照顾不同的屏幕分辨率的方式是我制作一个目标分辨率(320×480)的位图,从它制作一个canvas,并使用固定坐标绘制其上的所有元素,然后我只是在surfaceViewcanvas上绘制此位图,它在不同的屏幕上重新缩放。 问题是,当我在框架上绘制内容时,即使框架与位图的大小相同,位图也会超出范围。 (位图是320×480,它得到拉伸,不适合屏幕)这是代码: public class Graphics { private Bitmap frameBuffer, grid; private Canvas canvas; public Graphics(Context context) { frameBuffer = Bitmap.createBitmap(320, 480, Config.ARGB_8888); canvas = new Canvas(frameBuffer); grid = BitmapFactory.decodeResource(context.getResources(), R.drawable.grid); } public Bitmap present() { canvas.drawColor(Color.WHITE); canvas.drawBitmap(grid, 0, 0, null); return frameBuffer; } 和SurfaceView类: public class GameView extends SurfaceView implements Runnable { private SurfaceHolder […]

居中放大自定义视图 – 计算canvas坐标

我正在开发我的第一个“真正的”Android应用程序,一个图形工作流编辑器。 绘图是在一个自定义类中完成的,它是View的子类。当我的元素是矩形时,它们在canvas上绘制。 为了检测元素上的动作,我比较坐标并检查触摸位置上的元素。 为了实现缩放手势,我尝试了http://android-developers.blogspot.com/2010/06/making-sense-of-multitouch.html 使用4参数canvas.scale(…)函数,居中缩放效果很好,但我无法使用mPosX和mPosY的偏移来计算canvas坐标,以检测缩放后的触摸是否在元素上。 我尝试更改上面博客文章中的示例,将canvas置于缩放手势的中心位置: canvas.save(); canvas.translate(mPosX, mPosY); canvas.scale(mScaleFactor, mScaleFactor, mScalePivotX, mScalePivotY); //drawing …. canvas.restore(); 我没有find任何关于如何在不丢失参考偏移量来计算坐标的情况下做到的例子。 有一个简单的解决方法吗? 我尝试用手势中心和比例因子来计算偏移量,但是失败了:/ 我已经看到使用ImageView的其他示例经常使用Matrix来转换图像。 这可以通过自定义视图和canvas完成吗? 如果是,我如何获得x和y偏移来检查坐标? 此外,如果我的想法完全错误,我会很高兴看到一些关于如何正确完成的例子。 谢谢! ;)