android – 使用XML的箭头矩形形状

如何使用shape和xml实现这种形状的Departments标头而没有9-patch?

我的意思是左边带箭头的矩形.

enter image description here

我的代码片段:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:bottom="1px"
        android:left="@dimen/edittext_border"
        android:right="@dimen/edittext_border"
        android:top="@dimen/edittext_border">
        <shape android:shape="rectangle">
            <stroke
                android:width="@dimen/edittext_border_width"
                android:color="@color/menu_divider" />

            <solid android:color="@color/background" />
            <corners android:radius="4dp" />


        </shape>
    </item>
</layer-list>

解决方法:

如果您正在寻找这样的东西,请尝试以下代码..

Final Output

>在drawable文件夹中创建一个xml arrow_shape.

 <?xml version="1.0" encoding="utf-8"?>
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">   
 <item>
 <rotate android:fromdegrees="45" android:todegrees="45"  
   android:pivotX="-40%" android:pivotY="87%" >
    <shape android:shape="rectangle" >
        <stroke android:color="#c6802a" android:width="10dp"/>
        <solid android:color="#c6802a" />
    </shape>
</rotate>
</item>
</layer-list>

>在drawable文件夹中创建一个xml rectangle_shape.

<?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="#B2E3FA" />
 </shape>
</item>

>在主xml文件

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.example.stpl.myapplication.MainActivity">

<RelativeLayout
    android:id="@+id/arrow"
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:background="@drawable/arrow_shape"
    android:rotation="270" />

  <RelativeLayout
   android:id="@+id/rectangle"
   android:layout_width="150dp"
   android:layout_height="50dp"
   android:background="@drawable/rectangle_shape"
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:android="http://schemas.android.com/tools" />

</LinearLayout>

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...