如何控制Activity和Dialog的显示透明度
来源:互联网 发布:wap文字页游源码 编辑:程序博客网 时间:2024/05/16 01:38
最近两天做个联系,参考其他资料,现在以最简单形式展示出来,希望给初学者以帮助:
main布局文件://一个测试Button按钮
<?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"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button android:id="@+id/mybutton"
android:text="测试Dialog"
android:textColor="@color/black_color"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
Dialog布局文件://一个测试可编辑文本框
<?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"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<EditText android:id="@+id/my_edittext"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
Activity java文件类
public class DialogActivityMain extends Activity {
private Button myButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myButton=(Button)findViewById(R.id.mybutton);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//通过Dialog构造方法参数引入style,实现Dialog半透明效果
Dialog d=new Dialog(DialogActivityMain.this,R.style.TANCStyle);
Window window=d.getWindow();
window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
d.setContentView(R.layout.my_first_dialog);
d.setTitle("显示Dialog");
d.show();
}
});
}
}
以上实现了进入Activity界面后,点击测试按钮,实现探出Dialog对话框,要想实现Activity的透明效果,可做如下工作:
在values文件下创建color.xml文件,内容如下
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name = "transparent">#4000</color >
<color name = "black_color">#000000</color >
</resources>
在values文件下创建styles.xml文件,内容如下
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Transparent">
<item name="android:windowBackground">@color/transparent</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
</style>
<style name="TANCStyle" parent="@android:style/Theme.Dialog">
<!-- 更换背景图片实现全透明 -->
<item name="android:windowBackground">@drawable/panel_background_sodino1</item>
<!-- 屏幕背景不变暗 -->
<item name="android:backgroundDimEnabled">false</item>
<!-- 更改对话框标题栏 -->
<item name="android:windowTitleStyle">@style/TitleStyle</item>
</style>
<style name="TitleStyle" parent="@android:style/DialogWindowTitle">
<item name="android:textAppearance">@style/TitleText</item>
</style>
<style name="TitleText" parent="@android:style/TextAppearance.DialogWindowTitle">
<!-- 设置Dialog标题栏文字颜色。 -->
<item name="android:textColor">#000</item>
</style>
</resources>
最后对manifest.xml进行说明:如果想对某个Activity实现透明效果,把 android:theme="@style/Transparent添加到<activity>标签内,如果对所有的Activity实现效果,则添加
到<application>标签内。
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".DialogActivityMain"
android:label="@string/app_name"
android:theme="@style/Transparent">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
全部完毕可以运行查看结果,实现了透明效果。希望能帮助一些人吧!
- 如何控制Activity和Dialog的显示透明度
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- Android中自定义Activity和Dialog的位置大小背景和透明度等
- android 如何设置dialog的透明度
- Android如何将Activity以Dialog的形式显示
- Android如何将Activity以Dialog的形式显示
- Android如何将Activity以Dialog的形式显示
- Android如何将Activity以Dialog的形式显示
- 如何让theme是自定义dialog样式的activity横向全屏显示(默认是和普通dialog那样,横向不是布满屏幕的)
- Activity和dialog的关系
- 设置Activity的显示形式为Dialog
- Dialog显示在Activity不同的位置
- 华盛顿大学计算机专业课程
- C#得到系统进程和结束某个指定的进程
- 《ASP.NET本质论》一般处理程序
- Android开发textview中跑马灯效果
- Usaco 1.5.1 数字金字塔(Number Triangles)
- 如何控制Activity和Dialog的显示透明度
- Google 正在打造一个可统领所有网页操作的 Web Intents API
- ssl 客户端无法显示证书
- 编译输出log
- 从 Delphi 7 到 Delphi 2010 -- ( 一 )基本数据类型的变化
- 最近在读的书
- 【编程语言】Android--手势滑屏及左右滑屏
- socket UDP TCP 的一些用法
- HDU/HDOJ 3400 Line belt 三分嵌套 杭电月赛