一对一直播系统源码为了界面美观,常会在一些按钮上实现圆角设计,那么一对一直播系统源码是怎样实现的呢?
1、在xml布局文件中直接引用自定义的button
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<com.ztk.demo.uitool.widget.RoundButton
android:id="@+id/bt"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:text="Hello World!"
android:padding="10dp"
app:radius="30dp"
app:bgColor="@color/colorAccent"
android:textColor="#ffffff"
android:gravity="center_horizontal"
android:layout_marginTop="60dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<com.ztk.demo.uitool.widget.RoundButton
android:id="@+id/bt2"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:text=""
android:padding="10dp"
app:topLeftRadius="10dp"
app:bgColor="@color/colorPrimary"
android:textColor="#ffffff"
android:gravity="center_horizontal"
android:layout_marginTop="30dp"
app:layout_constraintTop_toBottomOf="@+id/bt"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
<com.ztk.demo.uitool.widget.RoundButton
android:id="@+id/bt3"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:text=""
android:padding="10dp"
app:radius="30dp"
app:strokeColor="@color/colorAccent"
app:strokeWidth="2dp"
app:bgColor="@color/colorPrimary"
android:textColor="#ffffff"
android:gravity="center_horizontal"
android:layout_marginTop="30dp"
app:layout_constraintTop_toBottomOf="@+id/bt2"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
也可以通过代码动态设置:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RoundButton bt = findViewById(R.id.bt);
bt.setRadius(50);
// bt.setStrokeColors(ContextCompat.getColor(this,R.color.colorPrimary));
bt.setBackgroundColor(ContextCompat.getColor(this,R.color.colorPrimary));
// bt.setEachCornerRadius(50,0,0,0);
// bt.setStrokeData(6,ContextCompat.getColor(this,R.color.colorPrimary));
// int[] colors ={ContextCompat.getColor(this,R.color.colorPrimary) , ContextCompat.getColor(this,R.color.colorAccent), ContextCompat.getColor(this,R.color.white)};
// bt.setGradient(GradientDrawable.RECTANGLE,GradientDrawable.Orientation.LEFT_RIGHT,colors);
}
}
这里需要注意的是:因为我们通过把自定义的GradientDrawable来作为button的background来实现,所以,一对一直播系统源码这时再设置button的background会无效。
声明:本文由云豹科技转发自笑慢博客,如有侵权请联系作者删除