rco*_*ini 2 user-interface android
我正在使用此代码来应用具有透明背景的颜色。
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(MyColor));
Run Code Online (Sandbox Code Playgroud)
它在手机上效果很好,但在平板电脑上无法正常工作
显示在我的方格上有白色和灰色背景(我使用自定义视图,背景设置为@null):
根据您的帖子,我有一些问题可能会导致这些问题透明化。
1.-由于平板电脑显示的呈现效果不同,可能是OS API低于手机上的版本吗?如果是这种情况,请尝试使用与您的手机OS API相匹配的正确支持库。
2.-假设两个设备在OS API上都相似,则可以尝试两种不同的方法。
a)将 零作为参数传递给ColorDrawable :)
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(0));
Run Code Online (Sandbox Code Playgroud)
b) 创建另一个活动以仅显示您的对话框并隔离与父活动有关的主题(这肯定是导致问题的原因),请执行以下操作。
<style name="Transparent" parent="@android:style/Theme.NoTitleBar">
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
Run Code Online (Sandbox Code Playgroud)
上面是您必须与对话框活动关联的主题,然后在XML布局上使用以下内容。
android:background="#aa000000"
Run Code Online (Sandbox Code Playgroud)
您可以将这种方法应用于对话,显示DEMO屏幕或说明性的活动:)
您可以尝试一下,但是似乎已经建议了...?
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
Run Code Online (Sandbox Code Playgroud)
相反,您是否尝试过类似的方法?
<style name="TransparentDialogTheme" parent="android:Theme.Holo.Dialog.NoActionBar">
<item name="android:windowBackground">@color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
</style>
Run Code Online (Sandbox Code Playgroud)
然后,当您进行对话框时,请尝试...。
final Dialog dialog = new Dialog(this, R.style.TransparentDialogTheme);
Run Code Online (Sandbox Code Playgroud)
这有点矫kill过正,但如果您确实需要,可能也需要:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="TransparentDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowBackground">@color/orange_transparent</item>
<item name="android:windowIsFloating">false</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowTitleStyle">@null</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:gravity">center</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1756 次 |
| 最近记录: |