首页>代码>android客户端专业股票k线图>/KChartView-master/kchart/Example/src/main/java/com/github/tifezh/kchart/ExampleActivity.java
package com.github.tifezh.kchart; import android.content.res.Configuration; import android.os.Build; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.view.Window; import android.view.WindowManager; import android.widget.LinearLayout; import android.widget.RelativeLayout; import com.github.tifezh.kchart.chart.KChartAdapter; import com.github.tifezh.kchart.chart.KChartView; import com.github.tifezh.kchart.chart.KLineEntity; import com.github.tifezh.kchartlib.chart.formatter.DateFormatter; import com.github.tifezh.kchartlib.chart.impl.IKChartView; import com.github.tifezh.kchartlib.utils.ViewUtil; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import org.apache.http.util.EncodingUtils; import java.io.InputStream; import java.util.List; import butterknife.Bind; import butterknife.ButterKnife; public class ExampleActivity extends AppCompatActivity { @Bind(R.id.ll_status) LinearLayout mLlStatus; @Bind(R.id.kchart_view) KChartView mKChartView; @Bind(R.id.title_view) RelativeLayout mTitleView; private KChartAdapter mAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_example); ButterKnife.bind(this); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { Window window = getWindow(); window.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); } initView(); initData(); } private void initView() { mAdapter = new KChartAdapter(); mKChartView.setAdapter(mAdapter); mKChartView.setDateTimeFormatter(new DateFormatter()); mKChartView.setGridRows(4); mKChartView.setGridColumns(4); mKChartView.setOnSelectedChangedListener(new IKChartView.OnSelectedChangedListener() { @Override public void onSelectedChanged(IKChartView view, Object point, int index) { KLineEntity data = (KLineEntity) point; Log.i("onSelectedChanged", "index:" + index + " closePrice:" + data.getClosePrice()); } }); mKChartView.setOverScrollRange(ViewUtil.Dp2Px(this, 100)); } private void initData() { new Thread(new Runnable() { @Override public void run() { String fileName = "ibm.json"; //k线图的数据 String res = ""; try { InputStream in = getResources().getAssets().open(fileName); int length = in.available(); byte[] buffer = new byte[length]; in.read(buffer); res = EncodingUtils.getString(buffer, "UTF-8"); } catch (Exception e) { e.printStackTrace(); } final List<KLineEntity> data = new Gson().fromJson(res, new TypeToken<List<KLineEntity>>() { }.getType()); DataHelper.calculate(data); runOnUiThread(new Runnable() { @Override public void run() { mAdapter.addFooterData(data); mKChartView.startAnimation(); } }); } }).start(); } @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) { mLlStatus.setVisibility(View.GONE); mKChartView.setGridRows(3); mKChartView.setGridColumns(8); } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { mLlStatus.setVisibility(View.VISIBLE); mKChartView.setGridRows(4); mKChartView.setGridColumns(4); } } }

lizeng206 LV1
2022年11月16日
windygzf LV1
2022年1月3日
sianhxyeiangu LV14
2020年6月14日
没骨气的鱼 LV4
2020年6月6日
花花滑滑画画瓜瓜 LV9
2020年1月9日
陈大美女 LV1
2020年1月2日
13964652858 LV1
2019年5月8日
zyl891027 LV1
2019年1月12日
凌乱18181 LV2
2018年12月7日
xinghunbuxiu LV1
2018年11月19日