All Projects → mochixuan → Airpurgeview

mochixuan / Airpurgeview

Licence: apache-2.0
AirPurgeView

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Airpurgeview

Jprogressview
一个灵活的进度条,支持图形:圆形、圆角矩形、矩形等等,陆续会添加更多的图形,如果对你有帮助,请在右上角 star 一下,感谢
Stars: ✭ 46 (-70.51%)
Mutual labels:  view, circle
Mylittlecanvas
🎨Need to create a custom view ? You don't know how to use Canvas, use MyLittleCanvas instead !
Stars: ✭ 870 (+457.69%)
Mutual labels:  view, circle
bubble-layout
An Android ViewGroup that displays avatar bubbles... similar to the chat bubbles on Facebook Messenger.
Stars: ✭ 46 (-70.51%)
Mutual labels:  view, circle
Circle Progress View
Animated circular progress view for Android
Stars: ✭ 1,185 (+659.62%)
Mutual labels:  view, circle
Bounceview Android
Customizable bounce animation for any view like in Clash Royale app
Stars: ✭ 142 (-8.97%)
Mutual labels:  view
Sharpview
安卓带有尖角气泡的控件(TextView,ImageView,EditText,Layout),支持渐变色,圆角等自定义属性
Stars: ✭ 137 (-12.18%)
Mutual labels:  view
Yxwaveview
A water wave animation view (类似百度外卖的头像波浪效果)
Stars: ✭ 132 (-15.38%)
Mutual labels:  view
Flutterweekview
Displays a highly customizable week view (or day view) which is able to display events, to be scrolled, to be zoomed-in & out and a lot more !
Stars: ✭ 130 (-16.67%)
Mutual labels:  view
Show Case Card View
Show case card view
Stars: ✭ 151 (-3.21%)
Mutual labels:  view
React Native Circular Progress
React Native component for creating animated, circular progress with ReactART
Stars: ✭ 1,901 (+1118.59%)
Mutual labels:  circle
Circle Flags
A collection of 300+ minimal circular SVG country flags
Stars: ✭ 139 (-10.9%)
Mutual labels:  circle
Overflow Pager Indicator
Simple paging indicator widget with pager dataset ovewflow effect à la Instagram behavior
Stars: ✭ 136 (-12.82%)
Mutual labels:  view
Coordinator Behaviors
Android Library. Behaviors for CoordinatorLayout.
Stars: ✭ 143 (-8.33%)
Mutual labels:  view
Tapeview
滑动卷尺,适用于身高、体重输入等场景,样式风格自由定制。
Stars: ✭ 136 (-12.82%)
Mutual labels:  view
Aachartkit Swift
📈📊📱💻🖥️An elegant modern declarative data visualization chart framework for iOS, iPadOS and macOS. Extremely powerful, supports line, spline, area, areaspline, column, bar, pie, scatter, angular gauges, arearange, areasplinerange, columnrange, bubble, box plot, error bars, funnel, waterfall and polar chart types. 极其精美而又强大的跨平台数据可视化图表框架,支持柱状图、条形图、…
Stars: ✭ 1,962 (+1157.69%)
Mutual labels:  view
Arclayout
With Arc Layout explore new styles and approaches on material design
Stars: ✭ 1,662 (+965.38%)
Mutual labels:  view
Textwriter
Animate your texts like never before
Stars: ✭ 140 (-10.26%)
Mutual labels:  view
Enviews
🌟A cool dynamic view library
Stars: ✭ 1,771 (+1035.26%)
Mutual labels:  view
Easel
Tint and color Android views with ease
Stars: ✭ 139 (-10.9%)
Mutual labels:  view
Instagramactivityindicator
Activity Indicator similar to Instagram's.
Stars: ✭ 138 (-11.54%)
Mutual labels:  view

AirPurgeView

效果图两个

main.png

mode.gif

引用

Maven

<dependency>
  <groupId>com.wx.library</groupId>
  <artifactId>airpurgeview</artifactId>
  <version>1.0</version>
  <type>pom</type>
</dependency>

Gradle

compile 'com.wx.library:airpurgeview:1.0'

可设置的参数

<declare-styleable name="AirPurgeLayoutView">
	<attr name="granule_num" format="integer"/>    <!--颗粒物数-->
	<attr name="granule_radius" format="float"/>   <!--颗粒物数-->
	<attr name="granule_color" format="color"/>    <!--颗粒颜色,最好不透明的-->

	<attr name="circle_proportion" format="float"/>  <!--圆的直径大小占宽高中最小的那个的比例-->
	<attr name="main_color" format="color"/>            <!--实体圆环和扇叶圆环和字体的颜色-->
	<attr name="solidring_width" format="float"/>    <!--最外圈实线圆环的宽度,最好不要太大-->
	<attr name="dashedring_width" format="float"/>    <!--扇叶圆环的宽度,经测量是solidwidth四倍最好,可以适当调节-->
	<attr name="toptitle" format="string"/>
	<attr name="centertitle" format="string"/>
	<attr name="bottomtitle" format="string"/>
	<attr name="toptitle_textsize" format="dimension"/>
	<attr name="centertitle_textsize" format="dimension"/>
	<attr name="bottomtitle_textsize" format="dimension"/>
	<attr name="speed_level" format="integer"/>     <!--风速默认3000,可以修改-->
	<attr name="eachpan_angle" format="float"/>    <!--每片扇叶的角度 自己要计算好加间隙 一共360-->
	<attr name="eachpan_anglegap" format="float"/>    <!--相邻扇叶的间隙-->
</declare-styleable>

sample

XML

<com.wx.airpurgeview.AirPurgeLayoutView
        android:id="@+id/airpurge_view"
        android:layout_width="match_parent"
        android:layout_height="400dp"
        app:toptitle="PM2.5"
        app:centertitle="521"
        app:bottomtitle="空气优"/>

Java

btnChangeNum.setOnClickListener {
            clearMode1Anim()
            mAirPurgeView.setCenterTitle(random.nextInt(600).toString())
        }
        btnChangeBg.setOnClickListener {
            clearMode1Anim()
            if (colorIndex >= bgColors.size) colorIndex = 0
            mAirPurgeView.setBackgroundColor(bgColors[colorIndex],1000)
            colorIndex += 1
        }
        btnChangeStart.setOnClickListener {
            clearMode1Anim()
            mAirPurgeView.onOpenAirPurge()
        }
        btnChangeEnd.setOnClickListener {
            clearMode1Anim()
            mAirPurgeView.onCloseAirPurge()
        }
        btnChangeSpeed.setOnClickListener {
            clearMode1Anim()
            if (colorIndex >= bgColors.size || colorIndex <= 0) colorIndex = bgColors.size - 1
            mAirPurgeView.setSpeedLevel(colorIndex*1000.toLong())
            colorIndex -= 1
        }
        btnOpenGranlue.setOnClickListener {
            clearMode1Anim()
            mAirPurgeView.onOpenGranule(false)
        }
        btnCloseGranlue.setOnClickListener {
            clearMode1Anim()
            mAirPurgeView.onClearAllGranule()
        }
        btnChangeGranuleMode.setOnClickListener {
            clearMode1Anim()
            mAirPurgeView.onChangeGranuleMode(!mAirPurgeView.getGranuleMode())
        }


如果有问题可以提出,我有时间就改进。。。

后续使用过程中有问题,也会进行更新。。。

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].