From d1833b2a7cad46529087e2a40f596c205022f02f Mon Sep 17 00:00:00 2001 From: endian11 <Dana_Lee1016@126.com> Date: 星期五, 29 三月 2019 15:46:09 +0800 Subject: [PATCH] 给系统设置加上密码才能进入 --- app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java | 32 ++++--- app/src/main/res/values/strings.xml | 2 app/src/main/res/anim/v_fragment_enter.xml | 32 ++++++++ app/src/main/res/anim/v_fragment_exit.xml | 32 ++++++++ app/src/main/java/safeluck/drive/evaluation/fragment/PasswordFragment.java | 78 +++++++++++++++++++ app/src/main/res/layout/layout_pwd_fragment.xml | 51 ++++++++++++ 6 files changed, 214 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java index b26ae71..8106811 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/HomeFragment.java @@ -15,7 +15,8 @@ import me.yokeyword.fragmentation.SupportFragment; import safeluck.drive.evaluation.R; -/**棣栭〉 +/** + * 棣栭〉 * MyApplication2 * Created by lzw on 2019/3/15. 10:21:58 * 閭锛�632393724@qq.com @@ -30,7 +31,7 @@ @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - View view = inflater.inflate(R.layout.layout_home_fragment,container,false); + View view = inflater.inflate(R.layout.layout_home_fragment, container, false); initView(view); return view; } @@ -45,30 +46,30 @@ @Override public void onClick(View v) { - switch (v.getId()){ + switch (v.getId()) { case R.id.car_train: //鍗曟満璁粌 TrainFragment trainFragment = findFragment(TrainFragment.class); - if (trainFragment == null){ + if (trainFragment == null) { trainFragment = (TrainFragment) TrainFragment.newInstance(); start(trainFragment); - }else{ + } else { start(trainFragment); } break; case R.id.network_train: NetWorkTrainFragment netWorkTrainFragment = findFragment(NetWorkTrainFragment.class); - if (netWorkTrainFragment == null){ - netWorkTrainFragment = (NetWorkTrainFragment)NetWorkTrainFragment.newInstance(); + if (netWorkTrainFragment == null) { + netWorkTrainFragment = (NetWorkTrainFragment) NetWorkTrainFragment.newInstance(); start(netWorkTrainFragment); - }else{ + } else { start(netWorkTrainFragment); } //鑱旂綉鑰冭瘯 break; case R.id.exit_sys: //閫�鍑虹郴缁� - AlertDialog.Builder builder =new AlertDialog.Builder(_mActivity); + AlertDialog.Builder builder = new AlertDialog.Builder(_mActivity); builder.setMessage("鎮ㄥ皢閫�鍑虹郴缁�,璇风‘璁ゆ暟鎹凡淇濆瓨").setPositiveButton("纭畾", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { @@ -83,11 +84,16 @@ break; case R.id.system_setting: - BaseSettingFragment sysSetingFragment = findFragment(BaseSettingFragment.class); - if (sysSetingFragment == null){ - sysSetingFragment = (BaseSettingFragment) BaseSettingFragment.newInstance(); + SupportFragment pwdFragment = findFragment(PasswordFragment.class); + if (pwdFragment == null) { + pwdFragment = PasswordFragment.newInstance(); + extraTransaction().startDontHideSelf(pwdFragment); + } else { + extraTransaction().startDontHideSelf(pwdFragment); + } - start(sysSetingFragment); + + break; } } diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/PasswordFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/PasswordFragment.java new file mode 100644 index 0000000..5fec2ac --- /dev/null +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/PasswordFragment.java @@ -0,0 +1,78 @@ +package safeluck.drive.evaluation.fragment; + +import android.os.Bundle; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; +import android.widget.EditText; +import android.widget.Toast; + +import me.yokeyword.fragmentation.SupportFragment; +import safeluck.drive.evaluation.R; + +/** + * MyApplication2 + * Created by lzw on 2019/3/29. 13:22:38 + * 閭锛�632393724@qq.com + * All Rights Saved! Chongqing AnYun Tech co. LTD + */ +public class PasswordFragment extends SupportFragment implements View.OnClickListener { + + + private Button btn_sure; + private Button btn_cancle; + private EditText editText; + + public static SupportFragment newInstance() { + + Bundle args = new Bundle(); + + PasswordFragment fragment = new PasswordFragment(); + fragment.setArguments(args); + return fragment; + } + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + View view = inflater.inflate(R.layout.layout_pwd_fragment, container, false); + initView(view); + return view; + } + + private void initView(View view) { + btn_cancle = view.findViewById(R.id.btn_cancle); + btn_sure = view.findViewById(R.id.btn_sure); + editText = view.findViewById(R.id.et_pwd); + btn_sure.setOnClickListener(this); + btn_cancle.setOnClickListener(this); + } + + @Override + public void onClick(View v) { + switch (v.getId()) { + case R.id.btn_cancle: + + pop(); + break; + case R.id.btn_sure: + String pwd = editText.getText().toString().trim(); + if (!TextUtils.isEmpty(pwd) && pwd.equals("123456")) { + BaseSettingFragment sysSetingFragment = findFragment(BaseSettingFragment.class); + if (sysSetingFragment == null) { + sysSetingFragment = (BaseSettingFragment) BaseSettingFragment.newInstance(); + } + startWithPop(sysSetingFragment); + }else{ + Toast.makeText(_mActivity, "瀵嗙爜閿欒锛侊紒", Toast.LENGTH_SHORT).show(); + } + break; + default: + break; + } + } +} diff --git a/app/src/main/res/anim/v_fragment_enter.xml b/app/src/main/res/anim/v_fragment_enter.xml new file mode 100644 index 0000000..6695199 --- /dev/null +++ b/app/src/main/res/anim/v_fragment_enter.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** Copyright 2009, The Android Open Source Project +** +** 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. +*/ +--> + +<set xmlns:android="http://schemas.android.com/apk/res/android" + android:shareInterpolator="false" + android:zAdjustment="top"> + <alpha android:fromAlpha="0.0" android:toAlpha="1.0" + android:interpolator="@android:anim/decelerate_interpolator" + android:fillEnabled="true" + android:fillBefore="false" android:fillAfter="true" + android:duration="200"/> + <translate android:fromYDelta="8%" android:toYDelta="0" + android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true" + android:interpolator="@android:anim/decelerate_interpolator" + android:duration="300"/> +</set> \ No newline at end of file diff --git a/app/src/main/res/anim/v_fragment_exit.xml b/app/src/main/res/anim/v_fragment_exit.xml new file mode 100644 index 0000000..3aef44b --- /dev/null +++ b/app/src/main/res/anim/v_fragment_exit.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- +/* +** Copyright 2009, The Android Open Source Project +** +** 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. +*/ +--> + +<set xmlns:android="http://schemas.android.com/apk/res/android" + android:shareInterpolator="false" android:zAdjustment="top"> + <alpha android:fromAlpha="1.0" android:toAlpha="0.0" + android:interpolator="@android:anim/linear_interpolator" + android:fillEnabled="true" + android:fillBefore="false" android:fillAfter="true" + android:startOffset="100" + android:duration="150"/> + <translate android:fromYDelta="0%" android:toYDelta="8%" + android:fillEnabled="true" android:fillBefore="true" android:fillAfter="true" + android:interpolator="@android:anim/accelerate_interpolator" + android:duration="250"/> +</set> \ No newline at end of file diff --git a/app/src/main/res/layout/layout_pwd_fragment.xml b/app/src/main/res/layout/layout_pwd_fragment.xml new file mode 100644 index 0000000..b0bccef --- /dev/null +++ b/app/src/main/res/layout/layout_pwd_fragment.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@android:color/transparent" + android:gravity="center" + android:orientation="vertical"> +<RelativeLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:layout_width="220dp" + android:layout_height="140dp" + android:background="@color/train_bg" + android:layout_gravity="center" + android:padding="10dp"> +<android.support.design.widget.TextInputLayout + android:layout_width="match_parent" + app:counterMaxLength="8" + app:counterEnabled="true" + android:id="@+id/txt_input_1" + android:layout_height="60dp"> +<EditText + android:layout_width="match_parent" + android:hint="@string/plspwd" + android:id="@+id/et_pwd" + android:inputType="textPassword" + android:layout_height="50dp" /> +</android.support.design.widget.TextInputLayout> +<Button + android:layout_marginTop="20dp" + android:layout_marginStart="20dp" + android:layout_width="80dp" + android:layout_height="50dp" + android:id="@+id/btn_sure" + android:layout_alignParentStart="true" + android:layout_below="@+id/txt_input_1" + android:text="纭畾"/> + + <Button + android:id="@+id/btn_cancle" + android:layout_width="80dp" + android:layout_height="50dp" + android:layout_below="@+id/txt_input_1" + android:layout_alignParentEnd="true" + android:layout_marginTop="20dp" + android:layout_marginEnd="20dp" + android:text="鍙栨秷" /> + + +</RelativeLayout> +</LinearLayout> \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ce9009b..b5f22e9 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -11,4 +11,6 @@ <string name="sys_setting_sub">鏅鸿兘鑰冨煿锛屽姪鍔涢┚鑰冩柊鏃呯▼</string> <string name="save">淇濆瓨</string> <string name="on_board_sn">杞﹁浇璁惧鍙凤細</string> + <string name="pwd">瀵嗙爜</string> + <string name="plspwd">璇疯緭鍏ュ瘑鐮�</string> </resources> -- Gitblit v1.8.0