Articles of 可绘制

如何在现有布局内的Java代码中创buildImageView?

我正在寻找一个简单的方法让用户看到他们有多less饮料BAC计算器。 应用程序的图片: 按下button,我想要一个图像被添加到屏幕上,直接在微调和左alignment。 当我再次按下button时,我想另一个图像被添加到屏幕上。 所以,如果我按下添加啤酒button,一个可绘制的啤酒将出现在微调下面。 如果我再次按下加啤酒button,我想要在那里有两个啤酒瓶下的可绘制的啤酒,最好是从右侧添加。 (另外,让他们达到他们的宽度限制,环绕,再从左边开始,但是低于一个完整的线将是真棒) 我无法弄清楚如何做到这一点。 我认为在代码中添加一个ImageView到一个相对的布局(因为它需要被定位在右边)将是最好的路线,但如果可能在XML中,我会非常乐意使用它。 任何帮助?

使用可绘制形状的样式编辑EditText视图,看起来类似于Android <3.0的新全息主题

我想创build一个可绘制的形状 ,以模仿旧的Android版本上的新全息主题(Android> = 3.0)。 在底部画一条线很容易 <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item> <shape > <solid android:color="@color/border" /> </shape> </item> <!– main color –> <item android:bottom="1.5dp"> <shape > <solid android:color="@color/background" /> </shape> </item> </layer-list> 但是如何在全息主题中左右划勾

如果我把所有的图像留在drawable-hdpi文件夹中,会发生什么?

我在drawable-hdpi文件夹中有所有的图像。 我完成了所有屏幕尺寸的布局。 但我忘了把图像放在drawable-mdpi文件夹和drawable-ldpi文件夹中。 如果具有mdpi屏幕密度的手机要下载我的应用程序,只需使用drawable-hdpi文件夹中的图像? 或者会出现错误,因为在mdpi文件夹中没有图像? mdpi和ldpi文件夹中的唯一图像是图标。

mdpi图像对于10“android平板电脑来说太小了

我可以绘制每个密度为ldpi,mdpi,hdpi和xhdpi。 问题: 10“平板设备(1280×800)和手机设备320×480都使用中等密度,我有一个35×35的mdpi图像,但是这个图像对于平板电脑来说太小了,而对于手机来说是可以的。 我读了相关文件。 但我想我不明白这一点。 反正有平板电脑使用xhdpi图像,或者我不知道如何使用更大的图像为mdpi平板电脑。

JPG真的只能用于Android?

Android支持以下三种图像格式: PNG(首选),JPG(可接受)和GIF(不鼓励)。 资料来源: http : //developer.android.com/guide/topics/resources/drawable-resource.html#Bitmap 为什么JPG只能被列为可接受的? 对于没有透明度的图像来说,JPG不是一种更好的格式,因为它们比PNG更less占用空间:s? 或者PNG在运行时performance得如此之好,即使他们倾向于使APK变得更大,值得存储全屏幕背景图像等等作为PNG:s。 我对许多包含大量graphics的应用程序并不满意,这些应用程序占用了内部存储空间,因此它一直处于满载状态。 我的猜测是,他们在使用PNG的时候使用的是PNG,因为开发者指南说PNG是首选而没有解释为什么。 任何人都可以告诉我是否正确说JPG应该用于非透明图像?

Android可绘制:在XML文件中以百分比forms指定形状宽度?

我试图创build一个简单的Drawable,我想设置为一个视图的背景(使用setBackgroundDrawable )。 我只是想把drawable的背景分成2个相等的矩形(50% – 50%),第一个要黑色填充,第二个填充白色: <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/back_color_1"> <shape android:shape="rectangle"> <solid android:color="#000000" /> </shape> </item> <item android:id="@+id/back_color_2"> <shape android:shape="rectangle"> <solid android:color="#FFFFFF" /> </shape> </item> </layer-list> 如何指定每个形状在可绘制XML定义文件中的宽度应为50%? 类似于android:width =“50%” 。 (我正在使用Android 3.0,但我认为这是一个普遍的Android问题。) PS:你可以在CSS或XAML中做到这一点。

Android环形进度条上的圆边

我试图在Android上创build一个循环进度条,这似乎是非常简单的任务,但是我正在努力围绕进度和二级进程的边缘。 有没有办法做到这一点,而不是自定义视图? 使用拐angular半径? 或九个补丁可绘制? 对于这个观点(见附件)我正在使用一个简单的XML文件 <item android:id="@android:id/progress"> <shape android:useLevel="true" android:innerRadius="@dimen/sixty_dp" android:shape="ring" android:thickness="@dimen/seven_dp"> <solid android:color="#477C5B"/> <stroke android:width="1dip" android:color="#FFFF"/> </shape> </item>

AnimationDrawable不能播放

所以我希望我的animation在创build活动后立即开始,但是由于某种原因,无论我尝试什么,都会让它开始。 我可以通过点击事件开始,但是我希望它自己开始。 这是我有什么,我如何得到这个工作? package tween.learn; import android.app.Activity; import android.graphics.drawable.AnimationDrawable; import android.os.Bundle; import android.widget.ImageView; public class Animate extends Activity { public ImageView image; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ImageView tweenImage = (ImageView) findViewById(R.id.imageView1); tweenImage.setBackgroundResource(R.anim.cubicfacetween); AnimationDrawable frameAnimation = (AnimationDrawable) tweenImage.getBackground(); frameAnimation.start(); } } 谢谢

Android:为了使用filter创build一个StateListDrawable,克隆一个drawable

我试图做一个通用的框架function,使任何可绘制成为突出显示时按/聚焦/select等 。 我的函数需要一个Drawable,并返回一个StateListDrawable,默认状态是Drawable本身,而android.R.attr.state_pressed的状态是可绘制的,只是使用setColorFilter应用了一个filter。 我的问题是,我不能克隆drawable,并应用filter的一个单独的实例。 这是我想要实现的: StateListDrawable makeHighlightable(Drawable drawable) { StateListDrawable res = new StateListDrawable(); Drawable clone = drawable.clone(); // how do I do this?? clone.setColorFilter(0xFFFF0000, PorterDuff.Mode.MULTIPLY); res.addState(new int[] {android.R.attr.state_pressed}, clone); res.addState(new int[] { }, drawable); return res; } 如果我不克隆,那么filter显然应用于两种状态。 我尝试玩mutate()但它没有帮助.. 有任何想法吗? 更新: 被接受的答案确实克隆了一个drawable。 它并没有帮助我,虽然因为我的一般function失败了一个不同的问题。 看起来,当你将一个drawable添加到一个StateList时,它将失去所有的filter。

将drawableLeft和drawableRight的高度约束到TextView的高度

我有以下TextView : <TextView android:drawableLeft="@drawable/loading" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Updating Rates" /> 结果是这样的: 如何使加载循环的可绘制约束成比例,使其高度与文本的高度相匹配? 另外,如果可能的话,我想添加一些文字和图像之间的间距。