package com.stu.assistant.uitls; import android.annotation.TargetApi; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.os.Build; import android.os.Handler; import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import com.stu.assistant.base.BaseApplion; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import androidx.annotation.RequiresApi; public class Config { ExecutorService fixedThreadPool = Executors.newFixedThreadPool(5); Handler handler = new Handler(); public void search(final Todo todo) { fixedThreadPool.execute(new Runnable() { @Override public void run() { todo.onInOhter(); handler.post(new Runnable() { @Override public void run() { todo.onInMain(); } }); } }); } public interface Todo { void onInOhter(); String onInMain(); } public void outAppInfo() { SharedUtil.create(BaseApplion.application).clear(); BaseApplion.getActivityManage().finishAll(); } /** * author : stf * created: 2017-04-26 20:27 * acts on: editview 点击不显示软件盘,但是显示光标,关闭软件盘 ,可以通过PDA的键盘输入 */ public static void colseKey(final EditText editText) { Boolean isPda = SharedNoClearUtil.create(BaseApplion.application).getBoolean(SharedConfig.isPda, true); Log.i("hx","---colseKey---->"+isPda); if(isPda){ setFocuse(editText); } editText.setOnTouchListener(new View.OnTouchListener() { @TargetApi(Build.VERSION_CODES.LOLLIPOP) public boolean onTouch(View v, MotionEvent event) { if (isPda) { editText.setShowSoftInputOnFocus(false); // true 可以正常输入,fasle editview 点击不显示软件盘,但是显示光标,关闭软件盘 } else { editText.setShowSoftInputOnFocus(true); } return false; } }); } @RequiresApi(api = Build.VERSION_CODES.M) public void setFocuse(EditText fitsted, EditText seconded, Context mContext) { fitsted.clearFocus(); seconded.setFocusable(true); seconded.setFocusableInTouchMode(true); seconded.requestFocus(); seconded.requestFocusFromTouch(); InputMethodManager inputManager = (InputMethodManager) seconded.getContext().getSystemService(mContext.INPUT_METHOD_SERVICE); inputManager.showSoftInput(seconded, 0); } /** * author : stf * created: 2017-04-13 10:24 * acts on:进入页面主动获取焦点 * @param editview */ public static void setFocuse(EditText editview) { editview.setFocusable(true); editview.setFocusableInTouchMode(true); editview.requestFocus(); editview.requestFocusFromTouch(); } }