- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我已经断断续续地玩了几个星期的 Android 编程,我试图让一些看起来很简单的东西工作起来,但我认为我错过了一些东西。
我想要做的是让背景从白色平滑地渐变到黑色。
我尝试了一些方法,但似乎都不起作用。
我做的第一件事是使用 for 循环和 LinearLayout 的 setBackgroundColor 方法,将 R、G 和 B 值一起从 0 更改为 255。它不起作用。
我可以做一个设置更改,但是当我做循环时,我只得到最后一个值。我认为正在发生的是 UI 在循环进行时锁定,而在循环结束时解冻。我尝试在循环中添加延迟(丑陋的嵌套循环延迟和 Thread.sleep),但都无济于事。
谁能给我任何关于如何让它工作的指示?我需要第二个线程来更改颜色吗?我对线程有一个模糊的概念,虽然我从未使用过它们。
我的示例代码大致显示了我正在尝试做的事情如下:
main.xml 是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/screen"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
而我的java代码是(0.01 inc.只是作为一个丑陋的延迟机制来尝试看到颜色变化缓慢):
package nz.co.et.bgfader;
import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
public class bgfader extends Activity {
LinearLayout screen;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
screen = (LinearLayout) findViewById(R.id.screen);
for (int i = 0; i < 65535; i+=0.01) {
screen.setBackgroundColor(0xff000000 + i);
}
}
}
任何帮助将不胜感激
干杯
史蒂夫
最佳答案
如果您有兴趣,我发现了另一种更改背景颜色的方法——我认为使用动画会比您目前使用的更容易:)
如果您使用 API Level 11 或更高版本,您可以在 LinearLayout 的背景颜色上使用 ObjectAnimator。
ObjectAnimator colorFade = ObjectAnimator.ofObject(screen, "backgroundColor", new ArgbEvaluator(), Color.argb(255,255,255,255), 0xff000000);
colorFade.setDuration(7000);
colorFade.start();
另外,请注意,必须使用 32 位 int 颜色代码。见 http://developer.android.com/reference/android/graphics/Color.html有关详细信息,但您可以使用 Color.argb、Color.rgb、我上面使用的十六进制,或者查看 int 颜色常量。
希望这会有所帮助!
关于android - 在 Android 中,如何平滑地将背景从一种颜色淡化为另一种颜色? (如何使用线程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5200811/
我有一些 div 垂直对齐内部的 display: table 和 display: table-cell。无论如何,问题是,当我通过 fadeTo() 或 fadeIn 使用 jQuery 设置不透
使用 jQuery,我想在“框”中循环显示 3 个不同的背景图像和 3 组文本,每 6 秒淡出到下一个。 CSS: .box { background: url(/filepath/to/image.
点击背景更改为图像或颜色。为此,首先我为 body 创建了两个类: body.bg-color { background-color:red; } body.bg-img { back
正如标题所说,我想要实现的是在 "Patch "+ $Patch_next 字符串中淡入淡出,而不是在悬停时立即显示它。 if(isset($Patch_next)){
我正在创建一个导航并且已经为按钮制作了 CSS 属性。 我想在静态按钮属性之上淡入悬停属性。 这样做最有效的方法是什么? CSS 看起来像这样: Home
我已经能够淡化 div 的顶部,但我无法让底部也淡化。我想我可以反转我用来淡化顶部的 css,但它不起作用。 HTML: LOCATIONS CSS .contai
我想创建一个特定大小的列表,但它的内容可能比列表大。 我认为如果列表中有元素并且它们在底部和顶部淡出,同时为也包含该列表的容器提供背景图像,那将会非常漂亮。事实证明,这比预期的要难,而且我很难为此类事
我对我的问题做了一些研究,不幸的是我的问题没有解决方案。最接近的是 Fade UIImageView as it approaches the edges of a UIScrollView但它仍然不
大家好,我在淡出 HTML 文档中的 Div 时遇到了问题。我能够使用相反的相同功能,并且能够根据需要淡入但不能淡出 div。有什么想法吗? 这是 JavaScript 函数: function fa
我对 Java 和 SWT 还很陌生,希望能将一幅图像融入到另一幅图像中。我现在在标签中有一张图片(相关代码): Device dev = shell.getDisplay(); try {
这个问题在这里已经有了答案: How to set gradient color to the background of UILabel in iPhone (2 个答案) 已关闭 8 年前。
我想下载 zip 并解压。当我下载 zip 时,一切正常。但是,当解压缩时,我的界面会停止几秒钟,有时应用程序会崩溃。如何解决? Zip 文件大小 650 MB downloadButton - 单击
我想使用 jquery 淡入一个 div,但它不起作用。如果我将“fout”(这是我想要淡入的元素)的可见性设置为隐藏,那么它不会显示任何内容,尽管消息仍然存在,因为我可以看到滚动条在移动。知道为什么
我目前有一个填充了用户 friend 的 tableView。 tableView 是 TableViewController 的一部分,它可以正常运行。我希望 tableview 在最底部永久淡化,
我有一个我正在尝试构建的 CSS 下拉菜单,下拉菜单的背景有一个褪色/锥形框阴影: 我无法实现如何让方框阴影真正变细/淡出。 这是我现在所在的位置:http://jsfiddle.net/Shpigf
我正在寻找一种在 Unity 中淡化 TextMesh-Text 的 alpha 值的方法,但我无法在线找到解决方案,也无法在 LeanTween Documentation 中找到解决方案。 . L
如何使用 jQuery 淡化 div 的边缘?想象一个内部有图像的旋转木马,可以水平滑动。如何淡出左右两侧,使边缘附近的图像逐渐消失。 希望它是清楚的。 :) 最佳答案 Webkit 浏览器(即 Ch
我发现与 Javascript 无关的默认智能感知建议。 native 浏览器功能太多I will never use . 有没有办法关闭/限制智能感知?例如隐藏浏览器方法,如上面链接中的方法。 最佳
我正在尝试淡出 detailView 中 UIWebView 的底部。它更像是褪色最后 20-40 像素。我正在为“ReadMoreFade”(link)使用 CSSTricks 代码。下面粘贴了我的
我想创建一个显示成功消息的模态弹出窗口(针对移动设备)。 我目前正在为整个内容添加一个不透明的背面叠加层,使用 .overlay { position:fixed; top:0px;
我是一名优秀的程序员,十分优秀!