Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 白色边框加上“透明”;“线性布局”;_Java_Android_Border_Transparency_Android Drawable - Fatal编程技术网

Java 白色边框加上“透明”;“线性布局”;

Java 白色边框加上“透明”;“线性布局”;,java,android,border,transparency,android-drawable,Java,Android,Border,Transparency,Android Drawable,我想添加一个线性布局,有一个透明的背景以及白色边框。问题是:就我在谷歌搜索的结果而言,两者中我只能实现一个 以下是我所做的: 将以下内容保存为drawable中的border.xml <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shap

我想添加一个线性布局,有一个透明的背景以及白色边框。问题是:就我在谷歌搜索的结果而言,两者中我只能实现一个

以下是我所做的:

  • 将以下内容保存为drawable中的border.xml

      <?xml version="1.0" encoding="utf-8"?>
      <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
      <item> 
           <shape android:shape="rectangle">
           <solid android:color="#FFFFFF" /> 
      </shape>
      </item>   
         <item android:left="5dp" android:right="5dp" android:top="5dp" android:bottom="5dp" >  
         <shape android:shape="rectangle"> 
         </shape>
       </item>    
      </layer-list> 
    
    
    
  • 我现有的页面布局

         <LinearLayout
            android:id="@+id/quiz"
            android:layout_width="150dp"
            android:layout_height="120dp"
            android:background="#66041414"          <-------- replaced it with android:background="@drawable/border"
            android:orientation="vertical"
            android:layout_marginLeft="5dp" >
    
             ......
           </LinearLayout>
    

    可用于后台的Xml绘图:

    <shape xmlns:android="http://schemas.android.com/apk/res/android">
    <corners android:radius="30dp" />
    <stroke android:width="5dp" android:color="#ffffffff"/>
    <solid android:color="#66000000"/>
    </shape>
    
    
    

    根据需要调整半径、宽度和深色透明度(#ff和#66部分)。

    为此,您可以使用两个布局
    对齐
    一个顶部,然后为
    俯视图
    设置背景
    透明
    ,并为
    俯视图
    设置白色边框作为背景。您可以在
    相对版面中执行此操作

    您的可绘制版面背景:

    如果需要,可以更改拐角形状的半径。但是笔划将创建一个边框,而实体部分是我们正在使其透明的背景

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
           android:shape="rectangle">
      <corners
          android:radius="2dp"
          android:topRightRadius="0dp"
          android:bottomRightRadius="0dp"
          android:bottomLeftRadius="0dp" />
      <stroke
          android:width="1dp"
          android:color="@android:color/white" />
      <solid android:color="@android:color/transparent"/>
    </shape>
    
    
    
    和我的测试布局.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/ll1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
    
    
        <LinearLayout 
            android:id="@+id/ll2"
            android:layout_height="50dp"
            android:layout_width="50dp"
            android:background="@drawable/my_transparent_linear_layout"></LinearLayout>
    </LinearLayout>
    
    
    
    有效,下面是证据:


    的确,@Ali Imran的建议很好,请查看下面的方法,希望它能有所帮助

    back.xml

    
    
    main.xml

    
    
    另外,请浏览下面的链接,这样使用
    xml
    的方法对您也会有用


    我只能为android设置一个值:背景。。。要么是边界,要么是透明度。。。根据你的代码,我得到的是边界,但不是透明度。我希望你得到了我??无论如何,感谢您为边框提供的优化代码。@anurag只需编辑颜色,前两位数字表示透明度(#00到#ff)。我已将默认填充颜色设置为半透明黑色的
    #66000000
    ,将默认边框颜色设置为完全不透明的白色。@anurag。颜色值#FFBBCCDD-FF->透明度级别(00是最透明的)、BB->红色级别(FF->完全红色)、CC->绿色级别、DD->蓝色级别。如果颜色值只有6个十六进制字符,而不是8个,则表示忽略透明度(元素不透明)#FFCCBBDD等于#CCBBDD。下次至少试试答案,因为@Singularity有点像你在图中问的那样。我回答说,使用
    xml
    的方法会有帮助。@Anurag:请查看下面的答案更新和证据。试试@VendettaDroid解决方案。确实有效。。。我知道我的话不足以帮助你,但还是要谢谢你的朋友。。。。你成就了我的一天:):)谢谢你,伙计,工作就像一个魔咒,只在底部边界?先生,谢谢你的帮助,非常感谢。。。bt,我从@VendettaDroid得到了我需要的东西。。。
    <?xml version="1.0" encoding="UTF-8"?> 
        <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
             <stroke android:width="1dp" android:color="#dd7b7a"/>
             <corners android:bottomRightRadius="10dp" android:bottomLeftRadius="10dp" 
             android:topLeftRadius="10dp" android:topRightRadius="10dp"/> 
             <solid android:color="#dd7b7a"/>
         </shape>
    
    <?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"
        android:gravity="center"
        >
    <LinearLayout 
         android:padding="4dip"
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/back"
        android:gravity="center_horizontal"
        >
    <LinearLayout  
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
       android:background="@drawable/tile_mode" // your transparent image
        />
    </LinearLayout>  
    </LinearLayout>