From a525ed7c996fcf45dfade33e53d3539285ee9ca5 Mon Sep 17 00:00:00 2001 From: md Date: Tue, 17 Aug 2021 18:11:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=88=91=E7=9A=84=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- app/src/main/AndroidManifest.xml | 6 +- .../outdoor/activity/LinkActivity.java | 50 +++ .../outdoor/activity/RegardMapActivity.java | 56 +++ .../adapter/CapacityEvaluationAdapter.java | 2 +- .../outdoor/adapter/TaskExplainAdapter2.java | 16 +- .../adapter/TaskPrefectureAdapter.java | 7 +- .../com/navinfo/outdoor/api/Constant.java | 34 +- .../navinfo/outdoor/base/BaseActivity.java | 12 +- .../outdoor/fragment/AboutFragment.java | 4 +- .../outdoor/fragment/ContactFragment.java | 118 ++++-- .../outdoor/fragment/IssueWebFragment.java | 1 + .../outdoor/fragment/MineFragment.java | 55 +-- .../outdoor/fragment/TaskExplainFragment.java | 9 +- .../fragment/TaskExplainFragment2.java | 37 +- .../fragment/TaskPrefectureFragment.java | 2 +- app/src/main/res/layout/activity_link.xml | 39 ++ app/src/main/res/layout/activity_login.xml | 1 + .../main/res/layout/activity_regard_map.xml | 94 +++++ app/src/main/res/layout/contact_fragment.xml | 345 +++++++++++++++++- .../main/res/layout/fragment_gather_get.xml | 2 +- app/src/main/res/layout/fragment_register.xml | 132 +++---- .../main/res/layout/fragment_stay_submit.xml | 65 ++-- app/src/main/res/layout/has_sumit_item.xml | 5 + app/src/main/res/layout/task_explain2.xml | 5 + app/src/main/res/values/strings.xml | 9 +- 26 files changed, 907 insertions(+), 201 deletions(-) create mode 100644 app/src/main/java/com/navinfo/outdoor/activity/LinkActivity.java create mode 100644 app/src/main/java/com/navinfo/outdoor/activity/RegardMapActivity.java create mode 100644 app/src/main/res/layout/activity_link.xml create mode 100644 app/src/main/res/layout/activity_regard_map.xml diff --git a/app/build.gradle b/app/build.gradle index 8bed7c3..5e04152 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/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index af34ca1..f8a12f5 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -46,8 +46,10 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.WhiteScreen"> - - + + + + Build.VERSION_CODES.LOLLIPOP) { + linkWeb.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); + } + settings.setBuiltInZoomControls(false); + linkWeb.loadUrl(url); + } + + @Override + public void onClick(View v) { + switch (v.getId()){ + case R.id.iv_icon: + finish(); + break; + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/outdoor/activity/RegardMapActivity.java b/app/src/main/java/com/navinfo/outdoor/activity/RegardMapActivity.java new file mode 100644 index 0000000..590d466 --- /dev/null +++ b/app/src/main/java/com/navinfo/outdoor/activity/RegardMapActivity.java @@ -0,0 +1,56 @@ +package com.navinfo.outdoor.activity; + +import android.content.Intent; +import android.view.View; +import android.widget.ImageView; +import android.widget.TextView; +import com.navinfo.outdoor.R; +import com.navinfo.outdoor.base.BaseActivity; + +/* + * 地图寻宝-关于地图的web页面 + * */ +public class RegardMapActivity extends BaseActivity implements View.OnClickListener { + + private ImageView ivFilterFinal; + private TextView tvPhone; + private TextView tvMapLink; + private TextView tvOfficialLink; + + + @Override + protected int getLayout() { + return R.layout.activity_regard_map; + } + + @Override + protected void initView() { + super.initView(); + ivFilterFinal = (ImageView) findViewById(R.id.iv_filter_final); + ivFilterFinal.setOnClickListener(this::onClick); + tvPhone = findViewById(R.id.tv_phone); + tvMapLink = (TextView) findViewById(R.id.tv_map_link); + tvMapLink.setOnClickListener(this::onClick); + tvOfficialLink = (TextView) findViewById(R.id.tv_official_link); + tvOfficialLink.setOnClickListener(this::onClick); + } + + @Override + public void onClick(View v) { + switch (v.getId()) { + case R.id.iv_filter_final: + finish(); + break; + case R.id.tv_map_link: + Intent linkIntent = new Intent(this, LinkActivity.class); + linkIntent.putExtra("url","http://www.navinfo.com"); + startActivity(linkIntent); + break; + case R.id.tv_official_link: + Intent officialIntent = new Intent(this, LinkActivity.class); + officialIntent.putExtra("url","https://dtxbmaps.navinfo.com/user"); + startActivity(officialIntent); + break; + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/outdoor/adapter/CapacityEvaluationAdapter.java b/app/src/main/java/com/navinfo/outdoor/adapter/CapacityEvaluationAdapter.java index 9de26ce..a6d0abb 100644 --- a/app/src/main/java/com/navinfo/outdoor/adapter/CapacityEvaluationAdapter.java +++ b/app/src/main/java/com/navinfo/outdoor/adapter/CapacityEvaluationAdapter.java @@ -37,7 +37,7 @@ public class CapacityEvaluationAdapter extends RecyclerView.Adapter { - private List explainList2 = new ArrayList<>(); + private List explainList2 = new ArrayList<>(); private Context context; public TaskExplainAdapter2(Context context) { this.context = context; } - public void setExplainList2(List explainList2) { - if (explainList2!=null){ + public void setExplainList2(List explainList2) { + if (explainList2 != null) { this.explainList2.addAll(explainList2); notifyDataSetChanged(); } } + public void taskExplainClearData() { + if (explainList2 != null) { + explainList2.clear(); + } + notifyDataSetChanged(); + } + @NonNull @Override public ViewHolder2 onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { @@ -43,7 +51,7 @@ public class TaskExplainAdapter2 extends RecyclerView.Adapter paramMap) { + Intent intent = new Intent(this, WebActivity.class); + if (paramMap !=null) { + intent.putExtra("map", paramMap); + } + intent.putExtra("url", url); + startActivity(intent); + } protected void initListener() { } diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/AboutFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/AboutFragment.java index fd06f9b..fbf0d43 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/AboutFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/AboutFragment.java @@ -9,6 +9,7 @@ import android.widget.RelativeLayout; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; import com.navinfo.outdoor.R; +import com.navinfo.outdoor.activity.RegardMapActivity; import com.navinfo.outdoor.activity.WebActivity; import com.navinfo.outdoor.base.BaseFragment; import com.navinfo.outdoor.http.HttpInterface; @@ -57,7 +58,8 @@ public class AboutFragment extends BaseFragment implements View.OnClickListener getActivity().finish(); break; case R.id.rl_about: - intint2WebActivity(HttpInterface.ABOUT_MAP, null); + Intent regardIntent = new Intent(getActivity(), RegardMapActivity.class); + startActivity(regardIntent); break; case R.id.rl_serve: intint2WebActivity(HttpInterface.MAP_AGREEMENT, null); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/ContactFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/ContactFragment.java index fd90b0e..163390e 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/ContactFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/ContactFragment.java @@ -1,42 +1,54 @@ package com.navinfo.outdoor.fragment; -import android.os.Build; import android.os.Bundle; import android.view.View; -import android.webkit.WebSettings; -import android.webkit.WebView; import android.widget.ImageView; +import android.widget.TextView; + import com.navinfo.outdoor.R; +import com.navinfo.outdoor.api.Constant; import com.navinfo.outdoor.base.BaseFragment; /** * 联系我们的Fragment */ -public class ContactFragment extends BaseFragment implements View.OnClickListener{ +public class ContactFragment extends BaseFragment implements View.OnClickListener { private ImageView ivContact; - private String content = "
\n" + - "

定义和用法

\n" + - "\n" + - "

\n" + - "\t\n" + - "

\n" + - "\n" + - "

<style> 标签用于为 HTML 文档定义样式信息。

\n" + - "\n" + - "

在 style 中,您可以规定在浏览器中如何呈现 HTML 文档。

\n" + - "\n" + - "

type 属性是必需的,定义 style 元素的内容。唯一可能的值是 \"text/css\"。

\n" + - "\n" + - "

style 元素位于 head 部分中。

\n" + - "
"; - private WebView nWebView; + private TextView tvJingName; + private TextView tvJingPhone; + private TextView tvHeiName; + private TextView tvHeiPhone; + private TextView tvShanName; + private TextView tvShanPhone; + private TextView tvYuName; + private TextView tvYuPhone; + private TextView tvChuanName; + private TextView tvChuanPhone; + private TextView tvGanName; + private TextView tvGanPhone; + private TextView tvSuName; + private TextView tvSuPhone; + private TextView tvLuName; + private TextView tvLuPhone; + private TextView tvFuName; + private TextView tvFuPhone; + private TextView tvGuangName; + private TextView tvGuangPhone; + private TextView tvGanzName; + private TextView tvGanzPhone; + private TextView tvYueName; + private TextView tvYuePhone; + private TextView tvYunName; + private TextView tvYunPhone; + public static ContactFragment newInstance(Bundle bundle) { ContactFragment fragment = new ContactFragment(); fragment.setArguments(bundle); return fragment; } + @Override protected int getLayout() { return R.layout.contact_fragment; @@ -52,21 +64,65 @@ public class ContactFragment extends BaseFragment implements View.OnClickListene super.initView(); ivContact = findViewById(R.id.iv_contact); ivContact.setOnClickListener(this); - nWebView = findViewById(R.id.news_webView); - nWebView.getSettings().setBlockNetworkImage(false); - WebSettings settings = nWebView.getSettings(); - settings.setJavaScriptEnabled(true); - if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { - nWebView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); - } - settings.setBuiltInZoomControls(false); - content = content.replace(" list = body.getList(); -// for (int i = 0; i < list.size(); i++) { -// fId = list.get(i).getId(); -// } taskPage++; }else { Toast.makeText(getActivity(), response.getMessage()+"", Toast.LENGTH_SHORT).show(); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/TaskExplainFragment2.java b/app/src/main/java/com/navinfo/outdoor/fragment/TaskExplainFragment2.java index 56a61ac..24862e0 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/TaskExplainFragment2.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/TaskExplainFragment2.java @@ -18,6 +18,7 @@ import com.navinfo.outdoor.adapter.TaskExplainAdapter2; import com.navinfo.outdoor.api.Constant; import com.navinfo.outdoor.base.BaseFragment; import com.navinfo.outdoor.bean.TaskExplainInfo; +import com.navinfo.outdoor.bean.TaskPrefectureBean; import com.navinfo.outdoor.http.Callback; import com.navinfo.outdoor.http.HttpInterface; import com.navinfo.outdoor.http.OkGoBuilder; @@ -38,6 +39,7 @@ public class TaskExplainFragment2 extends BaseFragment implements View.OnClickLi private XRecyclerView taskExplain2Recycler; private ArrayList dataBeans2; private TaskExplainAdapter2 taskExplainAdapter2; + private int taskExplainPage = 1; public static TaskExplainFragment2 newInstance(Bundle bundle) { TaskExplainFragment2 fragment = new TaskExplainFragment2(); @@ -53,12 +55,13 @@ public class TaskExplainFragment2 extends BaseFragment implements View.OnClickLi @Override protected void initView() { super.initView(); + ivTaskExplain2 = findViewById(R.id.iv_task_explain2_finish); taskExplain2Recycler = findViewById(R.id.task_explain2_recycler); ivTaskExplain2.setOnClickListener(this::onClick); taskExplain2Recycler.setLayoutManager(new LinearLayoutManager(getActivity())); //下划线 - taskExplain2Recycler.addItemDecoration(new DividerItemDecoration(getActivity(),DividerItemDecoration.VERTICAL)); + // taskExplain2Recycler.addItemDecoration(new DividerItemDecoration(getActivity(),DividerItemDecoration.VERTICAL)); taskExplain2Recycler.setRefreshProgressStyle(ProgressStyle.BallSpinFadeLoader); taskExplain2Recycler.setLoadingMoreProgressStyle(ProgressStyle.BallRotate); //取消上拉加载,刷新功能。 @@ -71,12 +74,14 @@ public class TaskExplainFragment2 extends BaseFragment implements View.OnClickLi taskExplain2Recycler.setLoadingListener(new XRecyclerView.LoadingListener() { @Override public void onRefresh() { - + taskExplainAdapter2.taskExplainClearData(); + taskExplainPage=1; + initNetWork2(); } @Override public void onLoadMore() { - + initNetWork2(); } }); taskExplainAdapter2.setOnItemClick(new TaskExplainAdapter2.OnItemClick2() { @@ -98,26 +103,34 @@ public class TaskExplainFragment2 extends BaseFragment implements View.OnClickLi private void initNetWork2() { showLoadingDialog(); + String id = getActivity().getIntent().getStringExtra("id"); HttpParams httpParams = new HttpParams(); - httpParams.put("fid", "3"); - httpParams.put("pageNum", "1"); + httpParams.put("fid", id); + httpParams.put("pageNum", taskExplainPage); httpParams.put("pageSize", "20"); OkGoBuilder.getInstance() .Builder(getActivity()) - .url(HttpInterface.LIST_TASK_EXPLAIN) - .cls(TaskExplainInfo.class) - .params(new HttpParams()) + .url(HttpInterface.LIST_TASK) + .cls(TaskPrefectureBean.class) + .params(httpParams) .token(Constant.ACCESS_TOKEN) - .getRequest(new Callback() { + .getRequest(new Callback() { @Override - public void onSuccess(TaskExplainInfo response, int id) { + public void onSuccess(TaskPrefectureBean response, int id) { dismissLoadingDialog(); - taskExplainAdapter2.setExplainList2(response.getBody().getData()); - Log.d("TAG", "onSuccess: " + response.getMsg() + "sssssssssssss"); + if (response.getCode() == 200){ + taskExplainAdapter2.setExplainList2(response.getBody().getList()); + taskExplainPage++; + } + taskExplain2Recycler.refreshComplete(); + taskExplain2Recycler.loadMoreComplete(); + Log.d("TAG", "onSuccess: " + response.getMessage() + "sssssssssssss"); } @Override public void onError(Throwable e, int id) { + taskExplain2Recycler.refreshComplete(); + taskExplain2Recycler.loadMoreComplete(); dismissLoadingDialog(); Toast.makeText(getActivity(), e.getMessage(), Toast.LENGTH_SHORT).show(); Log.d("TAG", "onError: " + e.getMessage()); diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/TaskPrefectureFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/TaskPrefectureFragment.java index 8455bfb..8f40556 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/TaskPrefectureFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/TaskPrefectureFragment.java @@ -116,7 +116,7 @@ public class TaskPrefectureFragment extends BaseFragment implements View.OnClick dismissLoadingDialog(); if (taskPrefectureBean.getCode() == 200){ taskPrefectureAdapter.setDataBeans(taskPrefectureBean.getBody().getList()); - // taskPage++; + taskPage++; }else { Toast.makeText(getActivity(), taskPrefectureBean.getMessage()+"", Toast.LENGTH_SHORT).show(); } diff --git a/app/src/main/res/layout/activity_link.xml b/app/src/main/res/layout/activity_link.xml new file mode 100644 index 0000000..8d48d19 --- /dev/null +++ b/app/src/main/res/layout/activity_link.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index a5bb38d..7fb034b 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -48,6 +48,7 @@ android:layout_marginTop="8dp" android:hint=" ID/手机号" android:maxLines="1" + android:singleLine="true" android:textColor="@color/white" android:paddingBottom="20dp" android:layout_marginRight="35dp" diff --git a/app/src/main/res/layout/activity_regard_map.xml b/app/src/main/res/layout/activity_regard_map.xml new file mode 100644 index 0000000..1496600 --- /dev/null +++ b/app/src/main/res/layout/activity_regard_map.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/contact_fragment.xml b/app/src/main/res/layout/contact_fragment.xml index b372aec..b2afda5 100644 --- a/app/src/main/res/layout/contact_fragment.xml +++ b/app/src/main/res/layout/contact_fragment.xml @@ -1,15 +1,16 @@ + android:layout_height="match_parent"> + @@ -20,23 +21,341 @@ android:layout_height="45dp" android:layout_alignParentLeft="true" android:layout_marginLeft="15dp" - android:src="@drawable/icon_arrow" - /> + android:src="@drawable/icon_arrow" /> - + android:layout_height="wrap_content" + android:layout_margin="20dp" + android:orientation="vertical" + app:layout_constraintTop_toBottomOf="@+id/rl_contact"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_gather_get.xml b/app/src/main/res/layout/fragment_gather_get.xml index 7c2bd64..ecbce90 100644 --- a/app/src/main/res/layout/fragment_gather_get.xml +++ b/app/src/main/res/layout/fragment_gather_get.xml @@ -8,7 +8,7 @@ @@ -12,8 +12,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/colorPrimaryBlue" - android:paddingTop="@dimen/top_pind_sp" android:orientation="horizontal" + android:paddingTop="@dimen/top_pind_sp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> @@ -24,20 +24,19 @@ android:layout_height="45dp" android:layout_alignParentLeft="true" android:layout_marginLeft="15dp" - android:src="@drawable/ic_baseline_arrow" - /> + android:src="@drawable/ic_baseline_arrow" /> + android:text="注册" /> + + app:layout_constraintTop_toBottomOf="@id/register_desc" /> + + app:layout_constraintLeft_toLeftOf="@id/et_register_phone" + app:layout_constraintTop_toBottomOf="@id/et_register_phone" /> + + app:layout_constraintTop_toBottomOf="@id/et_register_phone" /> + app:layout_constraintLeft_toLeftOf="@id/et_register_note" + app:layout_constraintTop_toBottomOf="@id/et_register_note" /> + + app:layout_constraintTop_toTopOf="@id/et_register_note" /> + + app:layout_constraintTop_toBottomOf="@id/et_register_note" /> + app:layout_constraintTop_toBottomOf="@id/register_referrer" /> + + android:background="@color/colorHui" + app:layout_constraintLeft_toLeftOf="@id/et_register_referrer" + app:layout_constraintTop_toBottomOf="@id/et_register_referrer" /> + + app:layout_constraintTop_toBottomOf="@id/et_register_referrer" /> + app:layout_constraintTop_toBottomOf="@id/register_paw" /> + + android:background="@color/colorHui" + app:layout_constraintLeft_toLeftOf="@id/et_register_paw" + app:layout_constraintTop_toBottomOf="@id/et_register_paw" /> + + app:layout_constraintTop_toBottomOf="@id/et_register_paw" /> + app:layout_constraintTop_toBottomOf="@id/register_confirm_paw" /> + + android:background="@color/colorHui" + app:layout_constraintLeft_toLeftOf="@id/et_register_confirm_paw" + app:layout_constraintTop_toBottomOf="@id/et_register_confirm_paw" /> + app:layout_constraintLeft_toLeftOf="@id/et_register_confirm_paw" + app:layout_constraintTop_toBottomOf="@id/et_register_confirm_paw" /> + + app:layout_constraintLeft_toRightOf="@id/iv_register_check" + app:layout_constraintTop_toTopOf="@id/iv_register_check" /> + + app:layout_constraintTop_toTopOf="@id/iv_register_check" /> +