From c19176c1dbe60c29c92169d476cfbab7572f17fc Mon Sep 17 00:00:00 2001 From: md Date: Thu, 24 Jun 2021 18:30:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8F=91=E7=8E=B0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E8=83=BD=E5=8A=9B=E6=B5=8B=E8=AF=84=E7=9A=84=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- .../outdoor/activity/FragmentManagement.java | 16 ++ .../outdoor/adapter/MessageAdapter.java | 66 +++++++ .../navinfo/outdoor/bean/CapacityBean.java | 178 ++++++++++++++++++ .../com/navinfo/outdoor/bean/ExamBean.java | 14 +- .../navinfo/outdoor/bean/ExamSubmitBean.java | 56 ++---- .../fragment/CapacityMeasurementFragment.java | 28 +-- .../outdoor/fragment/MessageFragment.java | 113 +++++++++++ .../outdoor/fragment/TreasureFragment.java | 9 + .../navinfo/outdoor/http/HttpInterface.java | 7 +- app/src/main/res/drawable/fuwu.png | Bin 0 -> 483 bytes app/src/main/res/drawable/ic_arrow_left.xml | 10 + app/src/main/res/layout/fragment_message.xml | 53 ++++++ app/src/main/res/layout/measure_item.xml | 3 + app/src/main/res/layout/message_item.xml | 37 ++++ app/src/main/res/layout/treasure_fragment.xml | 55 ++++-- app/src/main/res/values/styles.xml | 2 +- 17 files changed, 563 insertions(+), 86 deletions(-) create mode 100644 app/src/main/java/com/navinfo/outdoor/adapter/MessageAdapter.java create mode 100644 app/src/main/java/com/navinfo/outdoor/bean/CapacityBean.java create mode 100644 app/src/main/java/com/navinfo/outdoor/fragment/MessageFragment.java create mode 100644 app/src/main/res/drawable/fuwu.png create mode 100644 app/src/main/res/drawable/ic_arrow_left.xml create mode 100644 app/src/main/res/layout/fragment_message.xml create mode 100644 app/src/main/res/layout/message_item.xml diff --git a/app/build.gradle b/app/build.gradle index ddad9ff..e1e1655 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'com.android.application' android { compileSdkVersion 29 buildToolsVersion '29.0.2' - // ndkVersion '23.0.7123448' + ndkVersion '23.0.7123448' defaultConfig { applicationId "com.navinfo.outdoor" diff --git a/app/src/main/java/com/navinfo/outdoor/activity/FragmentManagement.java b/app/src/main/java/com/navinfo/outdoor/activity/FragmentManagement.java index 4ff74a3..34706f8 100644 --- a/app/src/main/java/com/navinfo/outdoor/activity/FragmentManagement.java +++ b/app/src/main/java/com/navinfo/outdoor/activity/FragmentManagement.java @@ -21,6 +21,7 @@ import com.navinfo.outdoor.fragment.HasSubmitFragment; import com.navinfo.outdoor.fragment.IssueFragment; import com.navinfo.outdoor.fragment.IssueWebFragment; import com.navinfo.outdoor.fragment.MapDownloadFragment; +import com.navinfo.outdoor.fragment.MessageFragment; import com.navinfo.outdoor.fragment.MineFragment; import com.navinfo.outdoor.fragment.OtherFragment; import com.navinfo.outdoor.fragment.PoiFragment; @@ -88,6 +89,7 @@ public class FragmentManagement extends BaseActivity { private FilterFragment filterFragment;//寻宝-筛选界面 -32 private OtherFragment otherFragment;//寻宝-上传-其他的fragment -33 private ChargingPileFragment chargingPileFragment;//寻宝-上传-充电站-充电桩的fragment-34 + private MessageFragment messageFragment;//寻宝 -消息的fragment -35 @Override protected int getLayout() { @@ -175,6 +177,9 @@ public class FragmentManagement extends BaseActivity { fragmentTransaction.hide(otherFragment); if (chargingPileFragment!=null)//寻宝-上传-充电站-充电桩的fragment-34 fragmentTransaction.hide(chargingPileFragment); + if (messageFragment!=null){//寻宝 -消息的Fragment -35 + fragmentTransaction.hide(messageFragment); + } } @@ -457,6 +462,17 @@ public class FragmentManagement extends BaseActivity { }else { fragmentTransaction.show(chargingPileFragment); } + break; + case 35://寻宝-消息 + if (messageFragment == null) { + messageFragment = MessageFragment.newInstance(new Bundle()); + fragmentTransaction.add(R.id.frame_layout, messageFragment); + } else { + fragmentTransaction.show(messageFragment); + } + break; + + } fragmentTransaction.commit(); } diff --git a/app/src/main/java/com/navinfo/outdoor/adapter/MessageAdapter.java b/app/src/main/java/com/navinfo/outdoor/adapter/MessageAdapter.java new file mode 100644 index 0000000..d87a7e6 --- /dev/null +++ b/app/src/main/java/com/navinfo/outdoor/adapter/MessageAdapter.java @@ -0,0 +1,66 @@ +package com.navinfo.outdoor.adapter; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.navinfo.outdoor.R; +import com.navinfo.outdoor.bean.TaskPrefectureBean; + +import org.jetbrains.annotations.NotNull; + +import java.util.ArrayList; +import java.util.List; + +public class MessageAdapter extends RecyclerView.Adapter { + private Context context; + private List messageList = new ArrayList<>(); + + public void setMessageList(List messageList) { + this.messageList.addAll(messageList); + notifyDataSetChanged(); + } + + public MessageAdapter(Context context) { + this.context = context; + } + + @NonNull + @NotNull + @Override + public ViewHolder onCreateViewHolder(@NonNull @NotNull ViewGroup parent, int viewType) { + View inflate = LayoutInflater.from(context).inflate(R.layout.message_item, parent, false); + return new ViewHolder(inflate); + } + + @Override + public void onBindViewHolder(@NonNull @NotNull ViewHolder holder, int position) { + holder.tvMessageTitle.setText(messageList.get(position).getTitle()); + holder.tvMessageDest.setText(messageList.get(position).getSubtitle()); + holder.tvMessageTime.setText(messageList.get(position).getCreatetime()); + } + + @Override + public int getItemCount() { + return messageList.size(); + } + + public class ViewHolder extends RecyclerView.ViewHolder { + + private TextView tvMessageTitle; + private TextView tvMessageDest; + private TextView tvMessageTime; + + public ViewHolder(@NonNull @NotNull View itemView) { + super(itemView); + tvMessageTitle = itemView.findViewById(R.id.tv_message_title); + tvMessageDest = itemView.findViewById(R.id.tv_message_dest); + tvMessageTime = itemView.findViewById(R.id.tv_message_time); + } + } +} diff --git a/app/src/main/java/com/navinfo/outdoor/bean/CapacityBean.java b/app/src/main/java/com/navinfo/outdoor/bean/CapacityBean.java new file mode 100644 index 0000000..778a271 --- /dev/null +++ b/app/src/main/java/com/navinfo/outdoor/bean/CapacityBean.java @@ -0,0 +1,178 @@ +package com.navinfo.outdoor.bean; + +import java.util.List; + +public class CapacityBean { + + private Integer code; + private String message; + private BodyBean body; + + public Integer getCode() { + return code; + } + + public void setCode(Integer code) { + this.code = code; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public BodyBean getBody() { + return body; + } + + public void setBody(BodyBean body) { + this.body = body; + } + + public static class BodyBean { + private String title; + private List singleChoice; + private List multiChoice; + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public List getSingleChoice() { + return singleChoice; + } + + public void setSingleChoice(List singleChoice) { + this.singleChoice = singleChoice; + } + + public List getMultiChoice() { + return multiChoice; + } + + public void setMultiChoice(List multiChoice) { + this.multiChoice = multiChoice; + } + + public static class SingleChoiceBean { + private Integer id; + private Integer questionId; + private String question; + private List option; + private Integer examId; + private Object answer; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getQuestionId() { + return questionId; + } + + public void setQuestionId(Integer questionId) { + this.questionId = questionId; + } + + public String getQuestion() { + return question; + } + + public void setQuestion(String question) { + this.question = question; + } + + public List getOption() { + return option; + } + + public void setOption(List option) { + this.option = option; + } + + public Integer getExamId() { + return examId; + } + + public void setExamId(Integer examId) { + this.examId = examId; + } + + public Object getAnswer() { + return answer; + } + + public void setAnswer(Object answer) { + this.answer = answer; + } + } + + public static class MultiChoiceBean { + private Integer id; + private Integer questionId; + private String question; + private List option; + private Integer examId; + private Object answer; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public Integer getQuestionId() { + return questionId; + } + + public void setQuestionId(Integer questionId) { + this.questionId = questionId; + } + + public String getQuestion() { + return question; + } + + public void setQuestion(String question) { + this.question = question; + } + + public List getOption() { + return option; + } + + public void setOption(List option) { + this.option = option; + } + + public Integer getExamId() { + return examId; + } + + public void setExamId(Integer examId) { + this.examId = examId; + } + + public Object getAnswer() { + return answer; + } + + public void setAnswer(Object answer) { + this.answer = answer; + } + } + } +} diff --git a/app/src/main/java/com/navinfo/outdoor/bean/ExamBean.java b/app/src/main/java/com/navinfo/outdoor/bean/ExamBean.java index e2ab06f..71d5eee 100644 --- a/app/src/main/java/com/navinfo/outdoor/bean/ExamBean.java +++ b/app/src/main/java/com/navinfo/outdoor/bean/ExamBean.java @@ -1,20 +1,20 @@ package com.navinfo.outdoor.bean; public class ExamBean { - private String id; + private String examId; private String answer; - public ExamBean(String id, String answer) { - this.id = id; + public ExamBean(String examId, String answer) { + this.examId = examId; this.answer = answer; } - public String getId() { - return id; + public String getExamId() { + return examId; } - public void setId(String id) { - this.id = id; + public void setExamId(String examId) { + this.examId = examId; } public String getAnswer() { diff --git a/app/src/main/java/com/navinfo/outdoor/bean/ExamSubmitBean.java b/app/src/main/java/com/navinfo/outdoor/bean/ExamSubmitBean.java index 71eeeaa..1aafad3 100644 --- a/app/src/main/java/com/navinfo/outdoor/bean/ExamSubmitBean.java +++ b/app/src/main/java/com/navinfo/outdoor/bean/ExamSubmitBean.java @@ -1,62 +1,32 @@ package com.navinfo.outdoor.bean; public class ExamSubmitBean { - /** - * status : - * msg : - * body : {"grade":"0为不通过 1为通过 只有0和1"} - */ - private String status; - private String msg; - private BodyBean body; + private Integer code; + private String message; + private Integer body; - public String getStatus() { - return status; + public Integer getCode() { + return code; } - public void setStatus(String status) { - this.status = status; + public void setCode(Integer code) { + this.code = code; } - public String getMsg() { - return msg; + public String getMessage() { + return message; } - public void setMsg(String msg) { - this.msg = msg; + public void setMessage(String message) { + this.message = message; } - public BodyBean getBody() { + public Integer getBody() { return body; } - public void setBody(BodyBean body) { + public void setBody(Integer body) { this.body = body; } - - public static class BodyBean { - /** - * grade : 0为不通过 1为通过 只有0和1 - */ - - private String grade; - - public String getGrade() { - return grade; - } - - public void setGrade(String grade) { - this.grade = grade; - } - } - - @Override - public String toString() { - return "ExamSubmitBean{" + - "status='" + status + '\'' + - ", msg='" + msg + '\'' + - ", body=" + body + - '}'; - } } diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/CapacityMeasurementFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/CapacityMeasurementFragment.java index d1fc1b4..2b969f6 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/CapacityMeasurementFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/CapacityMeasurementFragment.java @@ -11,6 +11,7 @@ import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import com.lzy.okgo.model.HttpParams; import com.navinfo.outdoor.R; import com.navinfo.outdoor.adapter.CapacityMeasureAdapter; import com.navinfo.outdoor.base.BaseFragment; @@ -79,12 +80,14 @@ public class CapacityMeasurementFragment extends BaseFragment implements View.On } private void initNetWorks(boolean b) { + HttpParams httpParams = new HttpParams(); + httpParams.put("id", "11"); OkGoBuilder.getInstance() .Builder(getActivity()) .url(HttpInterface.EXAM_CONTENT) .method(OkGoBuilder.GET) .cls(MeasureBean.class) - .json(new JSONObject()) + .params(httpParams) .callback(new Callback() { @Override public void onSuccess(MeasureBean response, int id) { @@ -129,17 +132,17 @@ public class CapacityMeasurementFragment extends BaseFragment implements View.On break; case R.id.btn: try { - if (bolbean!=null){ - Map checkedMap = capacityMeasureAdapter.getCheckedMap(); + if (bolbean != null) { + Map checkedMap = capacityMeasureAdapter.getCheckedMap(); for (int i = 0; i < bolbean.size(); i++) { final String id = bolbean.get(i).getId(); - if (!checkedMap.containsKey(id)||checkedMap.get(id)==null||("").equals(checkedMap.get(id))){ + if (!checkedMap.containsKey(id) || checkedMap.get(id) == null || ("").equals(checkedMap.get(id))) { Toast.makeText(getContext(), "有题目未填写答案,请仔细检查!", Toast.LENGTH_SHORT).show(); return; } } - for(Map.Entry entry : checkedMap.entrySet()) { - examBeans.add(new ExamBean(entry.getKey(),entry.getValue())); + for (Map.Entry entry : checkedMap.entrySet()) { + examBeans.add(new ExamBean(entry.getKey(), entry.getValue())); } initExamSubmit(); } @@ -152,10 +155,9 @@ public class CapacityMeasurementFragment extends BaseFragment implements View.On private void initExamSubmit() throws JSONException { JSONArray jsonArray = new JSONArray(); - for (int i = 0; i < examBeans.size(); i++) { JSONObject json = new JSONObject(); - json.put("id", examBeans.get(i).getId()); + json.put("examId", examBeans.get(i).getExamId()); json.put("answer", examBeans.get(i).getAnswer()); jsonArray.put(json); } @@ -173,17 +175,17 @@ public class CapacityMeasurementFragment extends BaseFragment implements View.On @Override public void onSuccess(ExamSubmitBean response, int id) { dismissLoadingDialog(); - Log.d("TAG", "onSuccess: " + response.toString()+ "sssssssssssss"); - if (response.getBody().getGrade().equals("0")){ - MessageDialog.show((AppCompatActivity) getActivity(),"提示","不通过","确定","取消").setOkButton(new OnDialogButtonClickListener() { + Log.d("TAG", "onSuccess: " + response.toString() + "sssssssssssss"); + if (response.getBody().equals("0")) { + MessageDialog.show((AppCompatActivity) getActivity(), "提示", "不通过", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { @Override public boolean onClick(BaseDialog baseDialog, View v) { // Toast.makeText(getContext(), "点击了确定", Toast.LENGTH_SHORT).show(); return false; } }); - }else { - MessageDialog.show((AppCompatActivity) getActivity(),"提示","通过","确定","取消").setOkButton(new OnDialogButtonClickListener() { + } else { + MessageDialog.show((AppCompatActivity) getActivity(), "提示", "通过", "确定", "取消").setOkButton(new OnDialogButtonClickListener() { @Override public boolean onClick(BaseDialog baseDialog, View v) { // Toast.makeText(getContext(), "点击了确定", Toast.LENGTH_SHORT).show(); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/MessageFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/MessageFragment.java new file mode 100644 index 0000000..d5b7e5c --- /dev/null +++ b/app/src/main/java/com/navinfo/outdoor/fragment/MessageFragment.java @@ -0,0 +1,113 @@ +package com.navinfo.outdoor.fragment; + +import android.os.Bundle; +import android.util.Log; +import android.view.View; +import android.widget.ImageView; + +import androidx.recyclerview.widget.DividerItemDecoration; +import androidx.recyclerview.widget.LinearLayoutManager; + +import com.jcodecraeer.xrecyclerview.ProgressStyle; +import com.jcodecraeer.xrecyclerview.XRecyclerView; +import com.lzy.okgo.model.HttpParams; +import com.navinfo.outdoor.R; +import com.navinfo.outdoor.adapter.MessageAdapter; +import com.navinfo.outdoor.adapter.TaskPrefectureAdapter; +import com.navinfo.outdoor.base.BaseFragment; +import com.navinfo.outdoor.bean.TaskPrefectureBean; +import com.navinfo.outdoor.http.Callback; +import com.navinfo.outdoor.http.HttpInterface; +import com.navinfo.outdoor.http.OkGoBuilder; + +/** + * 寻宝-消息的Fragment + */ +public class MessageFragment extends BaseFragment implements View.OnClickListener { + + private ImageView messageFinal; + private XRecyclerView messageRecycler; + private MessageAdapter messageAdapter; + + public static MessageFragment newInstance(Bundle bundle) { + MessageFragment fragment = new MessageFragment(); + fragment.setArguments(bundle); + return fragment; + } + + @Override + protected int getLayout() { + return R.layout.fragment_message; + } + + @Override + protected void initView() { + super.initView(); + messageFinal = (ImageView) findViewById(R.id.message_final); + messageFinal.setOnClickListener(this::onClick); + messageRecycler = (XRecyclerView) findViewById(R.id.message_recycler); + messageRecycler.setLayoutManager(new LinearLayoutManager(getActivity())); + + messageRecycler.addItemDecoration(new DividerItemDecoration(getActivity(), DividerItemDecoration.VERTICAL)); + messageRecycler.setRefreshProgressStyle(ProgressStyle.BallSpinFadeLoader); + messageRecycler.setLoadingMoreProgressStyle(ProgressStyle.BallRotate); + //取消上拉加载,刷新功能。 + messageRecycler.setPullRefreshEnabled(false); + messageRecycler.setLoadingMoreEnabled(false); + messageAdapter = new MessageAdapter(getContext()); + messageRecycler.setAdapter(messageAdapter); + messageRecycler.getDefaultFootView().setNoMoreHint("已全部加载完毕"); + messageRecycler.setLoadingListener(new XRecyclerView.LoadingListener() { + @Override + public void onRefresh() { + + } + + @Override + public void onLoadMore() { + + } + }); + } + private void initNetwork() { + HttpParams httpParams = new HttpParams(); + httpParams.put("fid", "1"); + httpParams.put("pageNum", "1"); + httpParams.put("pageSize", "2"); + OkGoBuilder.getInstance() + .Builder(getActivity()) + .url(HttpInterface.listTask) + .method(OkGoBuilder.GET) + .cls(TaskPrefectureBean.class) + .params(httpParams) + .callback(new Callback() { + @Override + public void onSuccess(TaskPrefectureBean taskPrefectureBean, int id) { + dismissLoadingDialog(); + messageAdapter.setMessageList(taskPrefectureBean.getBody().getList()); + Log.d("TAG", "onSuccess: " + taskPrefectureBean.getMessage() + ""); + //initTaskSpecification(taskSpecificationBean,start); + } + + @Override + public void onError(Throwable e, int id) { + dismissLoadingDialog(); + Log.d("TAG", "onError: " + e.getMessage()); + } + }).build(); + } + @Override + protected void initData() { + super.initData(); + initNetwork(); + } + + @Override + public void onClick(View v) { + switch (v.getId()) { + case R.id.message_final: + getActivity().finish(); + break; + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java index 6800345..da7ad9d 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/TreasureFragment.java @@ -1,5 +1,6 @@ package com.navinfo.outdoor.fragment; +import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Matrix; @@ -92,6 +93,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen private FrameLayout frameLayout; private GatherGetFragment gatherGetFragment; private LinearLayout dragView; + private ImageView ivMessage; public static TreasureFragment newInstance(Bundle bundle) { TreasureFragment fragment = new TreasureFragment(); @@ -120,6 +122,8 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen ivFilter.setOnClickListener(this::onClick); ivSubmit = findViewById(R.id.iv_submit); ivSubmit.setOnClickListener(this::onClick); + ivMessage = findViewById(R.id.iv_message); + ivMessage.setOnClickListener(this::onClick); treasureMap = (MapView) findViewById(R.id.treasure_map); tencentMap = treasureMap.getMap(); cbMapType = (CheckBox) findViewById(R.id.cb_map_type); @@ -469,6 +473,11 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen FilterFragment filterFragment = FilterFragment.newInstance(new Bundle()); showSlidingFragment(filterFragment); break; + case R.id.iv_message: + Intent messageIntent = new Intent(getContext(), FragmentManagement.class); + messageIntent.putExtra("tag",35); + startActivity(messageIntent); + break; } } diff --git a/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java b/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java index c044dde..3a7b44d 100644 --- a/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java +++ b/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java @@ -4,6 +4,9 @@ public class HttpInterface { //http://172.21.91.160:8000/api/user/list //发现接口 //http://172.23.139.4:8002/m4/findAndMessage/1/msg_list?fid=1&pageNum=1&pageSize=2 + //能力测评接口 + //http://172.23.139.4:8002/m4/findAndMessage/1/exam_content?id=11 + //http://172.23.139.4:8002/m4/findAndMessage/1/submitExam public static final String IP1 = "http://172.23.139.4:8002/m4/findAndMessage/1/"; public static final String IPm4 = "https://mockapi.eolinker.com/m5LxPbRb58eec57f4943420b1eb3b4e95b93968619a2973/m4/1/"; //发现:测试接口 @@ -12,8 +15,8 @@ public class HttpInterface { public static final String listTaskExplain = IP1 + "msg_list";//任务说明 public static final String MSG_LISt = IP1 + "msg_list";//发现查询接口 public static final String MSG_CONTENT = IPm4 + "msg_content";//发现 -富文本详情页请求 - public static final String EXAM_CONTENT = IPm4 + "exam_content";//发现 -能力测评获取试题接口 - public static final String EXAM_SUBMIT = IPm4 + "exam_submit";//发现 -能力测评提交试卷 post + public static final String EXAM_CONTENT = IP1 + "exam_content";//发现 -能力测评获取试题接口 + public static final String EXAM_SUBMIT = IP1 + "submitExam";//发现 -能力测评提交试卷 post diff --git a/app/src/main/res/drawable/fuwu.png b/app/src/main/res/drawable/fuwu.png new file mode 100644 index 0000000000000000000000000000000000000000..56b63fa9d92cd97a1a3da0a724c5d3342ec9a119 GIT binary patch literal 483 zcmeAS@N?(olHy`uVBq!ia0vp^${@_a3?wz#owI>ddw@@fE0BKi;_byNw?ODJ5Z#2Z zFI~NL`P!Y!*KS|GbMN96s3278%B@S+?_Iri_v+QVH}3&u!FsRUx&YJ;l)7^3^3~h_ z|Np-L*LC^Ug{!wOTm?x1jRl!}_4bu3cP?GOd*j9Z*#oCl0NdH>=N;`N5sbXX}bm!u;*6b)?qim{{Eo0BXGF z>Eak-ar*7VOra(Np4Qx#$M$JmTYJt--{u+K{qJ(Ds?)Uj zH$1*i*?F)-L9TYy^erjLHM7Kyon0z^CTHixoU{o2OV@74EQ?i~bn!v=W;?w#rU^&Z z^?#bu>TLCmVe#ExE36u#;u+drZQiTJKI3ueG(oNzr|XQHrhLW{!uh|@} yh>_S7V$1$+!d3pzY10kG6@y;}{$1hPe2;q{m(Qo~wrxP4GI+ZBxvX + + diff --git a/app/src/main/res/layout/fragment_message.xml b/app/src/main/res/layout/fragment_message.xml new file mode 100644 index 0000000..17f34ab --- /dev/null +++ b/app/src/main/res/layout/fragment_message.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/measure_item.xml b/app/src/main/res/layout/measure_item.xml index e484a48..e3d4ec2 100644 --- a/app/src/main/res/layout/measure_item.xml +++ b/app/src/main/res/layout/measure_item.xml @@ -10,6 +10,9 @@ android:layout_height="wrap_content" android:layout_marginLeft="15dp" android:text="1、以下哪种拍图做法正确?" + android:textColor="@color/black" + android:textSize="18sp" + android:textStyle="bold" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/layout/message_item.xml b/app/src/main/res/layout/message_item.xml new file mode 100644 index 0000000..358bc6c --- /dev/null +++ b/app/src/main/res/layout/message_item.xml @@ -0,0 +1,37 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/treasure_fragment.xml b/app/src/main/res/layout/treasure_fragment.xml index a6903b7..ec2a5ee 100644 --- a/app/src/main/res/layout/treasure_fragment.xml +++ b/app/src/main/res/layout/treasure_fragment.xml @@ -3,20 +3,22 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:sothree="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" - android:gravity="bottom" android:id="@+id/sliding_layout" - sothree:umanoPanelHeight="0dp" - sothree:umanoShadowHeight="0dp" - sothree:umanoScrollableView="@id/scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:gravity="bottom" sothree:umanoDragView="@id/dragView" sothree:umanoOverlay="false" - android:layout_width="match_parent" - android:layout_height="match_parent"> + sothree:umanoPanelHeight="0dp" + sothree:umanoScrollableView="@id/scroll_view" + sothree:umanoShadowHeight="0dp"> + + android:gravity="center"> + + + + @@ -66,24 +78,25 @@ android:checked="false" app:layout_constraintRight_toRightOf="@id/cb_map_type" app:layout_constraintTop_toBottomOf="@id/cb_map_type" /> + + app:layout_constraintLeft_toLeftOf="@id/cb_foot_type" + app:layout_constraintTop_toTopOf="@id/iv_zoom_del" /> + + app:layout_constraintTop_toBottomOf="@id/iv_submit" /> + + + + android:focusable="true" + android:orientation="vertical"> + + + android:orientation="vertical"> \ No newline at end of file diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 72ff363..9a182d2 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -36,7 +36,7 @@