我正在寻找如何创建如图所示的倾斜按钮:
我尝试了一些解决方案:How to create parallelogram shape background? 和
Android: how to create shape with skewed two-tone color? 但是我找不到我想要的东西
答案 0 :(得分:1)
有一个第三方库,可以给出倾斜的Textview形状。您可以将侦听器设置为Textview并执行所需的功能。您可以通过更改app:slantedMode =“ left”的值来更改SlantedTextView的方向,也可以通过更改app:slantedLength =“ 55dp”的值来增加和减少SlantedTextView的大小。
库:
compile 'com.haozhang.libary:android-slanted-textview:1.2'
链接: https://github.com/HeZaiJin/SlantedTextView`
XML代码:
<com.haozhang.lib.SlantedTextView
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"
android:layout_marginEnd="96dp"
android:layout_marginTop="139dp"
android:gravity="center"
app:slantedBackgroundColor="@color/colorPrimaryDark"
app:slantedLength="55dp"
app:slantedMode="left"
app:slantedText="IOS"
app:slantedTextColor="@color/colorPrimary"
app:slantedTextSize="16sp" />
Java代码:
SlantedTextView stv = (SlantedTextView) findViewById(R.id.test);
stv.setText("PHP")
.setTextColor(Color.WHITE)
.setSlantedBackgroundColor(Color.BLACK)
.setTextSize(18)
.setSlantedLength(50)
.setMode(SlantedTextView.MODE_LEFT);
如果您想要类似的东西,那么我已经在drawable中编写了一些代码。可能可以帮助您
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:bottom="43dp"
android:left="43dp"
android:right="43dp"
android:top="43dp">
<rotate android:fromDegrees="10">
<shape android:shape="rectangle">
<size
android:width="200dp"
android:height="200dp" />
<gradient
android:endColor="#ecf566"
android:startColor="#00000000" />
<stroke
android:width="2dp"
android:color="#1414d2" />
</shape>
</rotate>
</item>
</layer-list>