zoukankan      html  css  js  c++  java
  • Android应用开发中半透明效果实现方案

    下面是自定义Activity半透明的效果例子:
    res/values/styles.xml
    <resources>
      <stylename="Transparent ">
        <itemname="android:windowBackground">@color/transparent_background</item>
        <itemname="android:windowNoTitle">true</item>
        <itemname="android:windowIsTranslucent">true</item>  
        <itemname="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
      </style>
    </resources>


    res/values/color.xml
    <?xmlversion="1.0"encoding="utf-8"?>
    <resources>
      <colorname="transparent_background">#50000000</color>
    </resources>
    注意:color.xml的#5000000前两位是透明的效果参数从00 到 ff(透明--不么透明),后6位是颜色的设置manifest.xml
    <activityandroid:name=".TransparentActivity"
    android:theme="@style/Transparent"/>
    java代码
    publicvoid onCreate(Bundle savedInstanceState) { 
            super.onCreate(savedInstanceState);
            setTheme(R.style.Transparent); 
            setContentView(R.layout.transparent);
    }

    下面是利用系统主题实现Activity半透明的效果例子:
    Android为透明效果提供了内置的主题:Theme(android:style/Theme.Translucent),如果想实现透明效果,只要 为Activity设置该Theme便可。如果想实现半透明效果,则只需要继承android:style/Theme.Translucent,并重写 便可。继承android:style/Theme.Translucent并重写:
    <?xmlversion=”1.0″ encoding=”utf-8″?>
    <resources>
    <stylename=”Theme.Translucent” parent=”android:style/Theme.Translucent”>
    <itemname=”android:windowBackground”>@color/translucent_background</item>
    <itemname=”android:colorForeground”>#fff</item>
    </style>
    </resources>
    AndroidMainfest.xml中使用该主题:
    <activityandroid:name=”.Translucent” android:label=”@string/app_name”
    android:theme=”@style/Theme.Translucent”>
    <intent-filter>
    <actionandroid:name=”android.intent.action.MAIN” />
    <categoryandroid:name=”android.intent.category.LAUNCHER” />
    </intent-filter>
    </activity>
     
    下面是实现View半透明的效果例子:
    Button或者ImageButton的背景设为透明或者半透明
    半透明:<Button android:background="#e0000000" ... />
    透明:    <Button android:background="#00000000" ... />
    颜色和不透明度 (alpha) 值以十六进制表示法表示。任何一种颜色的值范围都是 0 到 255(00 到 ff)
    。对于 alpha,00 表示完全透明,ff 表示完全不透明。表达式顺序是“aabbggrr”,其中“aa=alpha”
    (00 到 ff);“bb=blue”(00 到 ff);“gg=green”(00 到 ff);“rr=red”(00 到 ff)。例如
    ,如果您希望对某叠加层应用不透明度为 50% 的蓝色,则应指定以下值:7fff0000
    设置背景图片透明度(超简单)
    Java代码
    View v = findViewById(R.id.content);//找到你要设透明背景的layout 的id
    v.getBackground().setAlpha(100);//0~255透明度值

  • 相关阅读:
    输入n个整数,输出其中最小的k个
    输出单向链表中倒数第k个结点
    扑克牌大小
    Optional<T> 避免和null检查相关的bug
    筛选、切片、匹配、查找、匹配、归约
    java8 流 中的常用函数式接口
    action 和 controller 单例与多例问题
    Collections.sort Comparator.comparing 冒泡排序 效率对比
    java8 流
    将逗号分割的列,变成多列
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/3823451.html
Copyright © 2011-2022 走看看