android背景变暗
A. 求助,android Alertdialog弹出 activity背景不变暗
到底是要变暗还是不变暗啊。
我的方法是这样的
public class CustomDialog extends Dialog {
public CustomDialog(Context context, int themeResId) {
super(context, themeResId);
WindowManager.LayoutParams l = getWindow().getAttributes();
//0.0f完全不暗,即背景是可见的 ,1.0f时候,背景全部变黑暗。
l.dimAmount = 0.85f;
//设置背景全部变暗的效果
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
getWindow().setAttributes(l);
}
}
B. 如何使Android dialog弹出后的Android activity背景不变暗
在style 的xml 里 设置如下
<resources>
<style name="dialog" parent="@android:style/Theme.Dialog">
<item name="android:backgroundDimEnabled">false</item><!--activity不变暗-->
</style>
</resources>
设置为true, 背景变暗
Dialog = new Dialog(Activity, R.style.dialog);
C. Android Popwindow使用总结
1.基本属性方法
2.在弹窗出现后让背景变暗,并在弹窗消失后让背景还原
3.添加动画
自定义一个动画
添加动画
只有同时设置PopupWindow的背景和可以响应外部点击事件,它才能“真正”响应外部点击事件。也就是说,当你点击PopupWindow的外部或者按下“Back”键时,PopupWindow才会消失。
1.在popwindow中嵌套viewpager时候,关于定位问题:首先保证viewpager类是同一个,就是没有新new一个类。然后在show的时候记得setCurrentItem()一下就好了。
Android PopupWindow使用方法小结
Android中文API——PopupWindow
喵印~~
D. android 4.4 如何实行状态栏下拉过程中,所覆盖的背景渐变暗色,反之上拉时,渐变亮
你可以在xml文件中配置一下,startColor和endColor
E. 安卓手机设置壁纸和原图图片颜色不一样!怎么解决设置成壁纸以后比原图暗了许多
设置问题,设置(齿轮图标)→显示:
第一种:屏幕——屏幕模式——动态、标准、天然、电影。
和这四个选项有关,会造成原图和壁纸有色差。
F. android打开一个窗口后如何设置屏幕背景变暗且不能点击
1楼的回答是错误的,那是在窗口以外的地方不可点击,楼主是要在该panel不可点击。如果你的panel就是一个布局,你可以在onTouch方法返回false试试
G. Android 滑动菜单(slide menu) 背景 亮度和透明度设置
首先在sdk目录下source源码目录下搜索DrawerLayout文件,把相关的java文件导入工程
以5.0为例
@Override
protectedbooleandrawChild(Canvascanvas,Viewchild,longdrawingTime){
finalintheight=getHeight();
finalbooleandrawingContent=isContentView(child);
intclipLeft=0,clipRight=getWidth();
finalintrestoreCount=canvas.save();
if(drawingContent){
finalintchildCount=getChildCount();
for(inti=0;i<childCount;i++){
finalViewv=getChildAt(i);
if(v==child||v.getVisibility()!=VISIBLE||
!hasOpaqueBackground(v)||!isDrawerView(v)||
v.getHeight()<height){
continue;
}
if((v,Gravity.LEFT)){
finalintvright=v.getRight();
if(vright>clipLeft)clipLeft=vright;
}else{
finalintvleft=v.getLeft();
if(vleft<clipRight)clipRight=vleft;
}
}
canvas.clipRect(clipLeft,0,clipRight,getHeight());
}
finalbooleanresult=super.drawChild(canvas,child,drawingTime);
canvas.restoreToCount(restoreCount);
if(mScrimOpacity>0&&drawingContent){
/*
*这里是直接用画笔画了一层有透明度的方块覆盖在主内容上方,产生慢*慢变暗的效果,所以我们只需要在这里修改即可,
*根据代码逻辑可以知道我们只需要改变imag即可
*/
finalintbaseAlpha=(mScrimColor&0xff000000)>>>24;
finalintimag=(int)(baseAlpha*mScrimOpacity);
finalintcolor=imag<<24|(mScrimColor&0xffffff);
mScrimPaint.setColor(color);
canvas.drawRect(clipLeft,0,clipRight,getHeight(),mScrimPaint);
}elseif(mShadowLeft!=null&&(child,Gravity.LEFT)){
finalintshadowWidth=mShadowLeft.getIntrinsicWidth();
finalintchildRight=child.getRight();
finalintdrawerPeekDistance=mLeftDragger.getEdgeSize();
finalfloatalpha=
Math.max(0,Math.min((float)childRight/drawerPeekDistance,1.f));
//这里是绘制菜单的覆盖物
mShadowLeft.setBounds(childRight,child.getTop(),
childRight+shadowWidth,child.getBottom());
mShadowLeft.setAlpha((int)(0xff*alpha));
mShadowLeft.draw(canvas);
}elseif(mShadowRight!=null&&(child,Gravity.RIGHT)){
finalintshadowWidth=mShadowRight.getIntrinsicWidth();
finalintchildLeft=child.getLeft();
finalintshowing=getWidth()-childLeft;
finalintdrawerPeekDistance=mRightDragger.getEdgeSize();
finalfloatalpha=
Math.max(0,Math.min((float)showing/drawerPeekDistance,1.f));
mShadowRight.setBounds(childLeft-shadowWidth,child.getTop(),
childLeft,child.getBottom());
mShadowRight.setAlpha((int)(0xff*alpha));
mShadowRight.draw(canvas);
}
returnresult;
}
改变代码之后保存
这时候在布局文件中就不要使用android-supportv4包下的DrawerLayout的,改成你工程里修改后的DrawerLayout,运行就达到效果了
H. 华为手机背景黑色怎么调回来
1、检查是否开启了浏览器夜间模式,如开启,请关闭浏览器夜间模式,方法如下:
首先请您打开浏览器,在主页面最下方的菜单栏找到“三个点”图标,点击后选择“设置”>“关于”,确认浏览器版本:
* 5.X及以下版本(如5.0.141)、8.X版本(如8.0.0.376)、10.0.X版本(如10.0.1.310),10.1.X版本(如10.1.0.300),11.0.X版本(如11.0.2.301)和10.5.X及以上版本(如10.8.7.4733):
进入“浏览器菜单栏>右下角三个点>日间模式”,打开浏览器日间模式即可;
* 9.X版本(如9.0.1.321):
进入“浏览器菜单栏>右下角三个点>工具箱>日间模式”, 打开浏览器日间模式即可。
2、如未解决,请检查是否开启了深色省电皮肤,方法如下:
进入“手机设置>电池>深色省电皮肤”关闭此功能。3.如上述操作未解决,请检查是否开启了颜色反转,方法如下:
进入"手机设置>智能辅助(或辅助功能)>无障碍>颜色反转/高对比度文字 (开关开启)“关闭此功能。
或检查是否开启了模拟颜色空间,方法如下:
进入“手机设置>系统(或系统和更新)>开发人员选项>模拟颜色空间”选择关闭
I. 如何弹出 dialog activity对话框时背景变为黑色
第一种是在样式文件styles.xml中添加新的样式,父样式指向的是默认的Dialog样式,修改如下,然后你的Dialog用你添加的样式就可以了.
<resources>
<style name="DialogStyle" parent="@android:style/Theme.Dialog">
<!-- dialog背景样式 -->
<item name="android:windowBackground"> @android:color/transparent </item>
<!-- 背景透明 -->
<item name="android:backgroundDimEnabled">false</item> </style>
</resources>
第二种是在代码中修改.lp.alpha大小随自己要求设置
// 设置屏幕背景变暗
private void setScreenBgDarken() {
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.alpha = 0.5f;
lp.dimAmount = 0.5f;
getWindow().setAttributes(lp);
}
// 设置屏幕背景变亮
private void setScreenBgLight() {
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.alpha = 1.0f;
lp.dimAmount = 1.0f;
getWindow().setAttributes(lp);
}
第三种是重写在Activity中onCreateDialog()方法,这种我没用过,你可以尝试一下.