Articles of 调整

如何获取应用部件大小?

我有一个Android应用程序小部件,我想扩展它来支持几种尺寸,也可以用Honeycomb重新定义大小。 问题是我需要知道小部件的大小,所以我可以知道我可以放入多less内容。 我如何阅读应用程序的小部件大小? 我找不到任何东西。

我怎样才能调整imageButton?

我想调整我的ImageButton使用鼠标在graphics布局或使用android:layout_width , android:layout_height 。 但是每当我这样做的时候, ImageButton都没有resize,事实上它并不是小的,而是在边缘被切断。 提前致谢

如何在使用Android Universal Image Loader在视图中显示图片之前调整图片大小?

我成功地将通用图像加载程序库(1.8.3版本)应用于我的应用程序,我试图在显示图像之前调整图像大小(因为有时图像太大而无法在内存中caching)。 这是我正在尝试的: … BitmapFactory.Options resizeOptions = new BitmapFactory.Options(); resizeOptions.inSampleSize = 3; // decrease size 3 times resizeOptions.inScaled = true; options = new DisplayImageOptions.Builder() .showStubImage(R.drawable.blank) .showImageForEmptyUri(R.drawable.no_image) .cacheInMemory() .cacheOnDisc() .decodingOptions(resizeOptions) .build(); … 由于某些原因,此代码不会使图像缩小3倍。 有人有一个更好的方式来调整图像的大小确切的密度?

当键盘出现时如何推RecylerView?

我想要在whatsapp中构build一个消息布局。 我有一个edittext和一个recylerView。 问题是当键盘出现时它隐藏了信息! 所以,让我们说一下RecylerView: —item 1— —item 2— —item 3— —item 4— —EditText— 当键盘出现时,我得到这个: —item 1— —item 2— —EditText— —Keyboard— 但我想得到这个: —item 3— —item 4— —EditText— —Keyboard— 注意:当我设置linearLayoutManager.setStackFromEnd(true); 它的工作原理,但是当有一条消息,它出现在页面的底部。

我应该在添加到ImageView之前调整位图大小,还是让ImageView调整位图大小?

我有一个简单的问题:我应该调整一个更大的位图,然后再添加到ImageView或让ImageView调整位图? 什么是正确的方式,关于performance? 谢谢

在视图中缩放文本以适合?

我不相信这是存在的,但想要仔细检查。 我想设置一个TextView的文本大小,以适应在一个给定的宽度,单行。 例: <LinearLayout layout_width="100dip" layout_height="50dip"> <TextView layout_width="fill_parent" layout_height="wrap_content" textSize="fill" text="fit me please!" /> </LinearLayout> 谢谢

如何有效地调整位图的大小,而不会在android中丢失质量

我有一个大小为320×480的Bitmap ,我需要在不同的设备屏幕上展开它,我尝试使用这个: Rect dstRect = new Rect(); canvas.getClipBounds(dstRect); canvas.drawBitmap(frameBuffer, null, dstRect, null); 它工作,图像像我想要的那样填满了整个屏幕,但图像像素化,看起来很糟糕。 然后我试着: float scaleWidth = (float) newWidth / width; float scaleHeight = (float) newHeight / height; Matrix matrix = new Matrix(); matrix.postScale(scaleWidth, scaleHeight); Bitmap resizedBitmap = Bitmap.createBitmap(frameBuffer, 0, 0, width, height, matrix, true); canvas.drawBitmap(resizedBitmap, 0, 0, null); 这一次看起来很完美,很好,很stream畅,但是这个代码必须在我的主循环中,并且每次迭代创buildBitmap都会使其非常缓慢。 我怎样才能调整我的形象,使它不像素化,并得到快速完成? find解决scheme: Paint paint = […]

自定义ViewGroup中的视图在大小更改后不会呈现

我遇到了一个困难的问题,我希望有人能给我一些指点。 我正在使用一个自定义ViewGroup(实际上是一个包含一个RelativeLayout的FrameLayout)来呈现一个事件日历的应用程序。 日历内的事件被表示为根据事件的持续时间和包含视图的大小来确定大小的视图。 我遇到了包含FrameLayoutresize时出现的问题。 当前实现删除所有代表事件的视图,并尝试添加新的视图,并根据FrameLayout的当前大小计算它们的大小。 这个工作是通过在FrameLayout中覆盖的View的onSizeChanged()方法触发的。 当视图被resize时,这个代码被执行并且视图被更新,但是,它们中没有一个实际上在屏幕上呈现… FrameLayout中包含的视图是不可见的。 如果我在层次结构查看器工具中加载视图,它们是视图树的一部分,并在概述中列出它们应该在的位置,但不显示。 (请注意,这些视图在FrameLayout的初始渲染中是可见的…只有在resize后才会消失。) 看来在resize的事件顺序如下: onMeasure() onMeasure() onSizeChanged() onLayout() 在重置视图(onSizeChanged()内部)之后调用requestLayout()似乎不起作用。 但是,如果在调用requestLayout()之前造成一些延迟,则视图将变为可见。 我可以通过产生一个线程和睡眠,或者通过创build一个简单地调用requestLayout()并在调整自己的大小之后按下它的虚拟button,甚至在onSizeChanged()的末尾放置这个丑陋的黑客来导致这种延迟。 post(new Runnable() { public void run() { requestLayout(); } }); 当我使用这个黑客时,包含的视图是可见的,事件的顺序如下: onMeasure() onMeasure() onSizeChanged() onLayout() onMeasure() onMeasure() onLayout() 所以看起来强制第二个度量通过(在视图树被修改之后)使得包含的视图应该是可见的。 为什么拖延到requestLayout()的呼叫这对我来说是一个谜。 任何人都可以提供任何指针,我做错了什么? 我意识到这是有些难以遵循,而不看一些代码,所以我创build了一个小的示例应用程序,展示我的问题,并在Github上提供: https://github.com/MichaelSims/ViewGroupResizeTest 我上面提到的黑客是致力于一个单独的分支: https://github.com/MichaelSims/ViewGroupResizeTest/tree/post-runnable-hack 如果我可以提供任何额外的信息,请让我知道,并提前感谢。

如何在Android中使用双三次插值在canvas上绘制和缩放位图?

我想在canvas上画一个比它更大的位图。 我可以使用canvas.drawBitmap(位图,null,destRect,null); 但是如果源图像比目标矩形小得多,结果是像素化的,则质量很差。 如何使用双线性或双三次重采样来绘制位图? 任何帮助将不胜感激,thanx。

如何在webviewresize时使网页适合webview的宽度(无需重新加载)

我有一个HTML页面和一个全屏的Android Web视图。 HTML内容大于webview的可见区域。 我想将HTML内容适合webview的宽度。 真正重要的是:当设备的方向改变时,webview将不会重新加载,这意味着它只是resize,内容仍然适合宽度。 还有一件事:因为内容已经缩小,用户可以放大到100%的最大比例。 当内容被放大并且方向改变时,我想要内容再次适合宽度。 编辑1 :我可以改变HTML头部的元标记,但其内容仍然比webview的可见区域大。 我支持Android 2.3及更高版本。 编辑2 :感谢您对响应式网页devise的build议。 我知道这是什么,我可以做到。 问题是我不能在这种情况下改变HTML内容。 TL; DR :如何在webviewresize的情况下始终将更大的HTML内容适合Android的webview宽度,而无需重新加载内容。 (我可以改变webview,而不是很多的HTML。)