FhirSettingFragment.java 4.36 KB
package com.sw.laryngoscope.FHIR.fragment;


import android.app.FragmentTransaction;
import android.content.Context;
import android.provider.Settings;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.InputMethodManager;
import android.widget.RadioGroup;
import android.widget.TextView;

import androidx.fragment.app.Fragment;

import com.sw.laryngoscope.R;
import com.sw.laryngoscope.activity.BaseFragment;
import com.sw.laryngoscope.activity.CustomTimer;
import com.sw.laryngoscope.activity.HomeActivity;
import com.sw.laryngoscope.databinding.FgSettingFhirBinding;
import com.sw.laryngoscope.manager.SpManager;
import com.sw.laryngoscope.utils.Logger;


public class FhirSettingFragment extends BaseFragment<FgSettingFhirBinding> implements CustomTimer.TimerCallBack,
        RadioGroup.OnCheckedChangeListener,View.OnClickListener {

    private static final String TAG = "FhirFragment";
    private InputMethodManager imm;

    @Override
    public void onAttach(Context context) {
        super.onAttach(context);
        homeActivity = (HomeActivity) context;
        imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
    }

    @Override
    public void onResume() {
        super.onResume();
        Logger.d(TAG, "======showFragment======2");
    }

    @Override
    public void onHiddenChanged(boolean hidden) {
        super.onHiddenChanged(hidden);
        if (!hidden) {
            /*homeActivity.changeViewPage();
            homeActivity.headIconStateChange(0);*/
            initValue();
        } else {
        }
        hideIm();
        Logger.d(TAG, "======showFragment======2 " + hidden);
    }

    @Override
    protected FgSettingFhirBinding getViewBinding(LayoutInflater inflater, ViewGroup container) {
        return FgSettingFhirBinding.inflate(inflater,container,false);
    }

    @Override
    protected void init() {
        //layout_home_home_guest = (ConstraintLayout) rootView.findViewById(R.id.layout_home_home_guest);
        initValue();
    }

    public void initValue() {
        if ( !SpManager.get_fhir_hostname().isEmpty() ) {
            binding.edAeName.setText(SpManager.get_fhir_hostname());
        }
    }

    @Override
    protected void setListener() {
        binding.edAeName.setOnEditorActionListener(new TextView.OnEditorActionListener() {
            @Override
            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
                if (actionId == EditorInfo.IME_ACTION_DONE) {
                    if (imm != null) {
                        imm.hideSoftInputFromWindow(binding.edAeName.getWindowToken(), 0);
                    }
                    String str = binding.edAeName.getText().toString().trim();
                    if (str.trim().length() <= 0) {
                        return false;
                    }
                    SpManager.set_fhir_hostname(str);
                }
                return false;
            }
        });
        binding.edAeName.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {}
            @Override
            public void afterTextChanged(Editable s) {}
        });
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.txt_patient_list:

                break;
            default:
                break;
        }
    }

    @Override
    public void onCheckedChanged(RadioGroup radioGroup, int i) {
        switch (radioGroup.getCheckedRadioButtonId()) {

        }
    }

    public void hideIm() {
        InputMethodManager imm = (InputMethodManager) homeActivity.getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(homeActivity.getWindow().getDecorView().getWindowToken(), 0);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
    }

    @Override
    public void timerComply(long lastTime, String tag) {
    }

    @Override
    public void backMainAct() {}

    @Override
    public boolean startEnable() {
        return false;
    }

}