日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android自定义实现分时图,Android专业版K线图、分时图 android-kline

發布時間:2024/3/24 Android 79 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android自定义实现分时图,Android专业版K线图、分时图 android-kline 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

android-kline

基于MPAndroidChart的專業K線圖

簡介

android-kline是Android平臺的金融圖表庫,包括分時圖和K線圖。本項目通過繼承的方式定制了最新版本的MPAndroidChart,解決了下面的問題:

解決了多圖表手勢同步的問題

解決多圖表highlight聯動的問題

使用簡單,兩行代碼就可以實現專業K線效果

Demo

What's new

增加了MACD、KDJ指標的顯示和切換

增加了五日的分時圖

優化圖表的縮放,可以進行放大和縮小操作(之前只支持在初始狀態下的放大操作)

拼接圖表的縮放功能(之前如果一個手指在K線圖,另一個手指在交易量圖的時候,圖表是不可以縮放的)

全屏模式的示例

分時圖增加漲跌幅的坐標,并且漲跌幅為0%時豎直居中顯示

K線圖增加最大/最小值的顯示

配置

在項目build.gradle中添加依賴:

allprojects {

repositories {

jcenter()

maven { url "https://jitpack.io" }

}

}

dependencies {

compile com.github.gzw19931217:android-kline:1.0.2'

}

快速開始

mTimeLineView = new TimeLineView(getContext()); //初始化分時圖

mTimeLineView.setDateFormat("HH:mm"); // 設置x軸時間的格式

List hisData = ... // 初始化數據,一般通過網絡獲取數據

mTimeLineView.setLastClose(hisData.get(0).getClose()); // 設置昨收價

mTimeLineView.initData(hisData); // 初始化圖表數據

xml

android:id="@+id/kline"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

android:id="@+id/timeline"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

java

KLineView K線圖控件

public void showKdj() 顯示kdj指標

public void showMacd() 顯示macd指標

public void showVolume() 顯示交易量指標

public void initData(List hisDatas) 初始化數據,獲取到數據后調用

public void addData(HisData hisData) 圖表末尾增加一個數據

public void refreshData(float price) 刷新最后一個點的價格(不增加數據)

TimeLineView 分時圖控件

public void initData(List hisDatas) 初始化數據,獲取到數據后調用

public void addData(HisData hisData) 圖表末尾增加一個數據

public void refreshData(float price) 刷新最后一個點的價格(不增加數據)

public void initDatas(List... hisDatas) 初始化多日的數據,比如說5日的數據,就傳5個list過去

public void setLastClose(double lastClose) 設置昨天的收盤價,用于計算漲跌幅的坐標

兩個類共同的api:

public void setCount(int init, int max, int min) 設置圖標的可見個數,分別是初始值,最大值,最小值。比如(100,300,50)就是開始的時候100個點,最小可以縮放到300個點,最大可以放大到50個點

public void setDateFormat(String format) 設置x軸時間的格式

public void setLastClose(douhle lastClose) 設置昨收價格,用于計算漲跌幅

注意: 這里需要接收一個HisData的List,HisData需要如下的幾個數據(開盤、收盤、最高、最低、買賣量、時間),其他的指標會根據公式計算出來

在本項目中,時間戳date相當于唯一的id,如果重復的話無法將這個date添加到圖表中

public HisData(double open, double close, double high, double low, long vol, long date)

個性化:如果需要配置顏色,可以到colors.xml中重寫顏色的值。

反饋

歡迎各位提issues和PRs!

聯系方式

qq群: 629878453

License

Copyright gzw19931217 gzw19931217@qq.com

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

總結

以上是生活随笔為你收集整理的android自定义实现分时图,Android专业版K线图、分时图 android-kline的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。