Skip to content

自定义蜘蛛网图控件,支持多种属性

Notifications You must be signed in to change notification settings

xsfelvis/NetView

Repository files navigation

NetView

自定义蜘蛛网图控件,支持多种属性

先看效果图

#Usage

支持属性:

  • netColor 网的颜色
  • overlayColor 生成覆盖区域的颜色
  • overlayAlpha 覆盖区域的透明度
  • textColor 文本的字体颜色
  • tagsize 文本的大小

详细属性可以参阅详细属性

支持方法

一个是tag可以随意换,一个是绘制区域的占比

    /**
     * 设置网状线角标
     *
     * @param titles
     */
    public void setTitles(String[] titles) {
        this.titles = titles;
    }
    /**
     * 设置绘制区域的占比
     *
     * @param data
     */
    public void setPercent(double[] data) {
        this.data = data;
    }

支持wrap_content 重写了onMeasure方法,支持具体值和wrap_content

#Example

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:NetView="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    tools:context="com.xsf.netview.MainActivity">

    <NetView.netView
        android:id="@+id/netView"
        NetView:netColor="@color/colorPrimaryDark"
        NetView:overlayColor="@color/Yellow"
        NetView:textColor="@color/sienna"
        NetView:tagsize="20"
        android:layout_width="300dp"
        android:layout_height="match_parent"/>
</LinearLayout>

在Activity中的使用

 private netView netView;
    private String[] titles = {"android", "javascript", "java", "python", "c++", "ios"};
    private double[] percent = {1, 0.4, 0.6, 0.5, 0.8, 0.3};

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
    }

    private void initView() {
        netView = (NetView.netView) findViewById(R.id.netView);
        netView.setTitles(titles);
        netView.setPercent(percent);
    }

About

自定义蜘蛛网图控件,支持多种属性

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages