From f4b92800b86383d7abe4e2cbf04f4083d0ce8d03 Mon Sep 17 00:00:00 2001 From: endian11 <Dana_Lee1016@126.com> Date: 星期四, 26 九月 2019 18:34:20 +0800 Subject: [PATCH] 加上查看地图 --- app/src/main/res/layout/profile_layout.xml | 1 app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | 18 ++++++++ app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java | 90 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 107 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java new file mode 100644 index 0000000..0de7c4c --- /dev/null +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java @@ -0,0 +1,90 @@ +package safeluck.drive.evaluation.fragment; + +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.graphics.Path; +import android.graphics.PathDashPathEffect; +import android.os.Bundle; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.view.LayoutInflater; +import android.view.SurfaceHolder; +import android.view.SurfaceView; +import android.view.View; +import android.view.ViewGroup; + +import me.yokeyword.fragmentation.SupportFragment; +import safeluck.drive.evaluation.R; + +/** + * MyApplication2 + * Created by lzw on 2019/9/26. 15:20:58 + * 閭锛�632393724@qq.com + * All Rights Saved! Chongqing AnYun Tech co. LTD + */ +public class MapFragment extends SupportFragment implements SurfaceHolder.Callback { + private boolean isDrawing = false; + + public static SupportFragment newInstance(){ + return new MapFragment(); + } + private SurfaceView mSurfaceView; + private SurfaceHolder holder; + Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); + Path path = new Path(); + private Canvas canvas; + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + + + mSurfaceView = new SurfaceView(getActivity()); + ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); + holder = mSurfaceView.getHolder(); + holder.addCallback(this); + mSurfaceView.setLayoutParams(layoutParams); + mSurfaceView.setKeepScreenOn(true); + return mSurfaceView; + } + + @Override + public void surfaceCreated(final SurfaceHolder holder) { + isDrawing = true; + //寮�鍚嚎绋� 杩涜鐢诲浘 + new Thread(new Runnable() { + @Override + public void run() { + while (isDrawing){ + drawPath(); + } + } + }).start(); + } + + private void drawPath() { + try { + canvas = holder.lockCanvas(); + paint.setColor(Color.RED); + path.addCircle(mSurfaceView.getWidth()/2,mSurfaceView.getHeight()/2,70, Path.Direction.CW); + canvas.drawPath(path,paint); + + } catch (Exception e) { + e.printStackTrace(); + } finally { + if (canvas != null){ + holder.unlockCanvasAndPost(canvas); + } + } + } + + @Override + public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { + + } + + @Override + public void surfaceDestroyed(SurfaceHolder holder) { + isDrawing = false; + } +} diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java index 5b98085..1bf216c 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java @@ -22,7 +22,7 @@ * 閭锛�632393724@qq.com * All Rights Saved! Chongqing AnYun Tech co. LTD */ -public class TrainFragment extends SupportFragment { +public class TrainFragment extends SupportFragment implements View.OnClickListener { private ListView mListView ; private ScoreAdapter mScoreAdapter; @@ -42,6 +42,7 @@ } private void initView(View view) { mListView = view.findViewById(R.id.lv); + view.findViewById(R.id.view_map).setOnClickListener(this); mScoreAdapter = new ScoreAdapter(_mActivity); mListView.setAdapter(mScoreAdapter); mListView.addHeaderView(LayoutInflater.from(_mActivity).inflate(R.layout.layout_score_item,null)); @@ -51,4 +52,19 @@ mScoreAdapter.addDatas(mArrayList); } + + @Override + public void onClick(View v) { + switch (v.getId()){ + case R.id.view_map: + MapFragment passwordFragment = findFragment(MapFragment.class); + if (passwordFragment == null) { + passwordFragment = (MapFragment) MapFragment.newInstance(); + start(passwordFragment); + } else { + start(passwordFragment); + } + break; + } + } } diff --git a/app/src/main/res/layout/profile_layout.xml b/app/src/main/res/layout/profile_layout.xml index 3a545da..9bc183f 100644 --- a/app/src/main/res/layout/profile_layout.xml +++ b/app/src/main/res/layout/profile_layout.xml @@ -116,7 +116,6 @@ android:layout_height="wrap_content" android:layout_weight="1" android:text="鏌ョ湅鍦板浘" - android:visibility="gone" android:textColor="@android:color/white"/> </LinearLayout> -- Gitblit v1.8.0