我在布局上有一个ImageButton视图.如果用户单击ImageButton,该按钮应淡出.
按钮淡出动画将像这样开始:
public void buttonClicked(View aButton){
final Animation aAnim = new AlphaAnimation(1.0f, 0.0f);
aAnim.setDuration(500);
aButton.startAnimation(aAnim);
}
Run Code Online (Sandbox Code Playgroud)
这样可以工作,但只要ImageButton淡出,其Alpha值就会立即跳回到1.0并再次显示该按钮.
我使用动画侦听器暂时解决了它,它将ButtonImage设置为在动画结束时不可见但这对我来说似乎是一个奇怪的解决方案.
我需要做什么才能将Alpha Value按钮保持在动画的最后一个值?
谢谢.
我正在尝试在回归线周围创建一个半透明置信区域:
library(car)
library(ggplot2)
library(effects)
mod <- lm(salary~yrs.service+sex, data=Salaries)
yrseff <- as.data.frame(allEffects(mod)[[1]])
ggplot(yrseff, aes(x=yrs.service, y=fit))+
geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.2)+
geom_line(colour="darkgreen", size=2)
Run Code Online (Sandbox Code Playgroud)
我收到此错误消息:
警告消息:在grid.Call.graphics(L_polygon,x $ x,x $ y,index)中:此设备不支持半透明:每页仅报告一次
但是,如果我首先打开一个pdf设备(如下面的代码所示),它会创建一个带有半透明功能区的pdf文件.
pdf()
ggplot(yrseff, aes(x=yrs.service, y=fit))+
geom_ribbon(aes(ymin=lower, ymax=upper), alpha=.2)+
geom_line(colour="darkgreen", size=2)
dev.off()
Run Code Online (Sandbox Code Playgroud)
可能是什么问题?有没有办法获得半透明度而无需保存为pdf?
我在Ubuntu 12.04上使用RStudio,这是我的会话信息.
> sessionInfo()
R version 3.0.3 (2014-03-06)
Platform: i686-pc-linux-gnu (32-bit)
locale:
[1] LC_CTYPE=en_CA.UTF-8 LC_NUMERIC=C LC_TIME=en_CA.UTF-8
[4] LC_COLLATE=en_CA.UTF-8 LC_MONETARY=en_CA.UTF-8 LC_MESSAGES=en_CA.UTF-8
[7] LC_PAPER=en_CA.UTF-8 LC_NAME=C LC_ADDRESS=C
[10] LC_TELEPHONE=C LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] grid stats graphics grDevices utils datasets methods base
other attached packages: …Run Code Online (Sandbox Code Playgroud) 的石英2D节目指南定义了各种α-存储模式的可用性:

我们应该将哪些用于RGB上下文,为什么?
对于非不透明的上下文,kCGImageAlphaPremultipliedFirst或kCGImageAlphaPremultipliedLast?
对于不透明的上下文,kCGImageAlphaNoneSkipFirst还是kCGImageAlphaNoneSkipLast?
价值的选择是否会影响绩效?
通常,我会看到kCGImageAlphaPremultipliedFirst非透明和kCGImageAlphaNoneSkipFirst不透明的上下文.有些人说这些表现更好,但我没有看到任何关于此的确凿证据或文件.
快速搜索GitHub的显示,开发商的青睐kCGImageAlphaPremultipliedFirst了kCGImageAlphaPremultipliedLast和kCGImageAlphaNoneSkipLast超过kCGImageAlphaNoneSkipFirst.可悲的是,这只不过是轶事证据.
我一直想写它一段时间......作为大学的一个项目,我(和朋友一起)写了一个需要良好爆炸和粒子效果的游戏.我们遇到了一些问题,我们很优雅地解决了这个问题(我想),我想分享这些知识.
好的,所以我们找到了这个教程:制作一个粒子爆炸效果,这似乎很容易用Java和JOGL实现.在我回答我们究竟是如何实现本教程之前,我将解释如何完成渲染:
相机:只是一个标准正交基础,它基本上意味着它包含3个归一化的正交矢量,以及表示摄像机位置的第4个矢量.渲染完成使用gluLookAt:
glu.gluLookAt(cam.getPosition().getX(), cam.getPosition().getY(), cam.getPosition().getZ(),
cam.getZ_Vector().getX(), cam.getZ_Vector().getY(), cam.getZ_Vector().getZ(),
cam.getY_Vector().getX(), cam.getY_Vector().getY(), cam.getY_Vector().getZ());
Run Code Online (Sandbox Code Playgroud)
这样摄像机的z矢量实际上是目标,y矢量是"向上"矢量,而位置是......好位置.
所以(如果把它放在一个问题风格),如何实现良好的粒子效果?
PS:所有代码示例和游戏中的截图(包括答案和问题)均来自游戏,该游戏位于此处:Astroid Shooter
我有一个VideoView播放一个形状不是矩形的视频(即一个圆角的旋转圆柱).视频视图显示在具有背景颜色的LinearLayout中.我希望视频视图的背景是透明的,以便产生圆柱体在背景颜色上旋转而没有任何黑角的效果.这就是我得到的:
这就是我想得到的:
当然,您可以问,为什么我不设置视频的背景颜色以匹配容器的背景颜色,但我想实现这一点的原因是因为我的下一步是拥有图像或图案作为容器的背景.我的布局xml如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00aaff"
android:orientation="vertical" >
<VideoView
android:id="@+id/surface_view"
android:layout_width="254dp"
android:layout_height="200px" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
在进行实验时,我尝试为视频视图设置背景,但结果却完全掩盖了视频视图.
谢谢.
我试图使用copyPixelsToBuffer和copyPixelsFromBuffer方法在Android上访问ARGB_8888格式的位图的原始数据.但是,调用这些调用似乎始终将alpha通道应用于rgb通道.我需要byte []或类似的原始数据(通过JNI;是的,我知道Android 2.2中的bitmap.h,不能使用它).
这是一个示例:
// Create 1x1 Bitmap with alpha channel, 8 bits per channel
Bitmap one = Bitmap.createBitmap(1,1,Bitmap.Config.ARGB_8888);
one.setPixel(0,0,0xef234567);
Log.v("?","hasAlpha() = "+Boolean.toString(one.hasAlpha()));
Log.v("?","pixel before = "+Integer.toHexString(one.getPixel(0,0)));
// Copy Bitmap to buffer
byte[] store = new byte[4];
ByteBuffer buffer = ByteBuffer.wrap(store);
one.copyPixelsToBuffer(buffer);
// Change value of the pixel
int value=buffer.getInt(0);
Log.v("?", "value before = "+Integer.toHexString(value));
value = (value >> 8) | 0xffffff00;
buffer.putInt(0, value);
value=buffer.getInt(0);
Log.v("?", "value after = "+Integer.toHexString(value));
// Copy buffer back to Bitmap …Run Code Online (Sandbox Code Playgroud) java-native-interface android bitmap alpha-transparency argb
我有一个图像,有4个通道,4 * UINT8格式.
我试图将其转换为3通道浮点数,我正在使用此代码:
images.convertTo(images,CV_32FC3,1/255.0);
Run Code Online (Sandbox Code Playgroud)
转换后,图像采用浮动格式,但仍有4个通道.如何摆脱OpenCV中的第4个(alpha)频道?
我有PNG图像,我需要在显示之前将其转换为图标.
我就这样做了:
public Icon ImageToIcon(Image imgTest)
{
Bitmap bitmap = new Bitmap(imgTest);
Icon icoTest;
IntPtr iPtr = bitmap.GetHicon();
icoTest = (Icon) Icon.FromHandle(iPtr).Clone();
return icoTest;
}
Run Code Online (Sandbox Code Playgroud)
这样做后我失去了透明度,alpha透明图像没有按预期呈现....这可以解决吗?
我正在尝试使用透明模式推送视图控制器。
这是我的代码:
SearchViewController * searchViewController= [self.storyboard instantiateViewControllerWithIdentifier:@"SearchViewController"];
searchViewController.view.backgroundColor = [UIColor colorWithWhite:0 alpha:0.7f];
[self.navigationController pushViewController:searchViewController animated:YES];
Run Code Online (Sandbox Code Playgroud)
我做错的事情找出来并帮助我解决这个问题。
alpha-transparency uinavigationcontroller pushviewcontroller ios