package com.ectrip.cyt.ui; import java.lang.reflect.Method; import android.annotation.SuppressLint; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.text.Editable; import android.text.InputType; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; import android.view.View.OnTouchListener; import android.view.WindowManager; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.ectrip.cyt.shield_home.LockLayer.MToast; import com.ectrip.cyt.utils.ActivitiesManager; import com.ectrip.cyt.utils.CommetryUtils; import com.ectrip.cyt.utils.SharedPreferences2Obj; import com.ectrip.trips.check.R; import com.ectrip.trips.view.LongClickButton; import com.ectrip.trips.view.LongClickButton.LongClickRepeatListener; /** * @author jigo 输入订单 * */ public class InputOridActivity extends BaseActivity implements View.OnClickListener, LongClickRepeatListener { private String titleName; private EditText oridEdit, pwdEdit; private TextView two, three, four, five, six, seven, eight, nine, zero, X_btn, topBtns; private LongClickButton delete; private TextView one; private View one_layout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.app_input_orid); ActivitiesManager.getInstance().pushActivity(this); initConfig(); initView(); initReceiver(); } private void initReceiver() { // IntentFilter filter = new IntentFilter("cyt.orid.action"); // registerReceiver(broadcastReceiver, filter); } private void textViewShow(EditText message) { if (android.os.Build.VERSION.SDK_INT <= 10) { message.setInputType(InputType.TYPE_NULL); } else { getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); try { Class cls = EditText.class; Method setSoftInputShownOnFocus = cls.getMethod( "setSoftInputShownOnFocus", boolean.class); setSoftInputShownOnFocus.setAccessible(true); setSoftInputShownOnFocus.invoke(message, false); } catch (Exception e) { } } } private void initConfig() { titleName = getIntent().getStringExtra("titleName"); ((TextView) findViewById(R.id.title)) .setText(titleName == null ? getString(R.string.app_name) : titleName); findViewById(R.id.topBack).setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { finish(); } }); } @SuppressLint("NewApi") private void initView() { SharedPreferences2Obj.getInstance(InputOridActivity.this) .setName("SelectAction").setObject("isStatistic", "0"); // 非统计 titleName = getIntent().getStringExtra("titleName"); if (titleName != null) { ((TextView) findViewById(R.id.title)).setText(titleName); } else { ((TextView) findViewById(R.id.title)) .setText(R.string.input_order_id); } ((TextView) findViewById(R.id.title)).setVisibility(View.VISIBLE); oridEdit = (EditText) findViewById(R.id.input_orid); pwdEdit = (EditText) findViewById(R.id.input_pwd); int Select = SharedPreferences2Obj.getInstance(InputOridActivity.this) .setName("SelectAction").getObject("Select", Integer.class); if (Select == 2) { findViewById(R.id.layout02).setVisibility(View.GONE); findViewById(R.id.line).setVisibility(View.GONE); pwdEdit.setVisibility(View.GONE); findViewById(R.id.pwdText).setVisibility(View.GONE); } topBtns = (Button) findViewById(R.id.topBtns); topBtns.setVisibility(View.VISIBLE); one = (TextView) findViewById(R.id.one); one.setOnClickListener(this); // one.setTextColor(0X00000000); one_layout = findViewById(R.id.one_layout); one_layout.setOnTouchListener(new OnTouchListener() { @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouch(View arg0, MotionEvent arg1) { if (arg1.getAction() == MotionEvent.ACTION_DOWN) { arg0.setBackgroundColor(Color.BLACK); return false; } else if (arg1.getAction() == MotionEvent.ACTION_UP) { arg0.setBackgroundColor(Color.WHITE); return false; } return false; } }); two = (TextView) findViewById(R.id.two); two.setOnClickListener(this); three = (TextView) findViewById(R.id.three); three.setOnClickListener(this); four = (TextView) findViewById(R.id.four); four.setOnClickListener(this); five = (TextView) findViewById(R.id.five); five.setOnClickListener(this); six = (TextView) findViewById(R.id.six); six.setOnClickListener(this); seven = (TextView) findViewById(R.id.seven); seven.setOnClickListener(this); eight = (TextView) findViewById(R.id.eight); eight.setOnClickListener(this); nine = (TextView) findViewById(R.id.nine); nine.setOnClickListener(this); zero = (TextView) findViewById(R.id.zero); zero.setOnClickListener(this); X_btn = (TextView) findViewById(R.id.X_btn); X_btn.setOnClickListener(this); delete = (LongClickButton) findViewById(R.id.delete); delete.setLongClickRepeatListener(this); delete.setOnClickListener(this); topBtns.setText(getString(R.string.topbtn_ok)); topBtns.setOnClickListener(this); textViewShow(oridEdit); if (Select != 2) { textViewShow(pwdEdit); } if (android.os.Build.VERSION.SDK_INT >= 11) { try { oridEdit.setShowSoftInputOnFocus(false); pwdEdit.setShowSoftInputOnFocus(false); } catch (Exception e) { e.printStackTrace(); textViewShow(oridEdit); textViewShow(pwdEdit); } catch (Throwable e) { e.printStackTrace(); textViewShow(oridEdit); textViewShow(pwdEdit); } } else { textViewShow(oridEdit); textViewShow(pwdEdit); } } @Override public void onClick(View v) { int index = 0; Editable editable = null; if (oridEdit.isFocused()) { index = oridEdit.getSelectionStart(); editable = oridEdit.getText(); } else { index = pwdEdit.getSelectionStart(); editable = pwdEdit.getText(); } switch (v.getId()) { case R.id.topBtns: String input_oridStr = oridEdit.getText().toString().trim(); String input_pwdStr; int Select = SharedPreferences2Obj .getInstance(InputOridActivity.this) .setName("SelectAction").getObject("Select", Integer.class); if (Select != 2) { input_pwdStr = pwdEdit.getText().toString().trim(); } else { input_pwdStr = ""; } if (input_oridStr == null || "".equals(input_oridStr)) { MToast(InputOridActivity.this, getString(R.string.order_id_not_null), MToast.LENGTH_SHORT); return; } if (Select != 2) { if (input_pwdStr == null || "".equals(input_pwdStr)) { MToast(InputOridActivity.this, getString(R.string.pwd_not_null), MToast.LENGTH_SHORT); return; } } Intent intent = new Intent(InputOridActivity.this, InputOrderListActivity.class); intent.putExtra("input_orid", input_oridStr); intent.putExtra("input_pwd", input_pwdStr); intent.putExtra("titleName", getString(R.string.show_result)); intent.putExtra("mode", 2); startActivity(intent); break; case R.id.delete: if (editable.length() > 0) { try { editable.delete(index - 1, index); } catch (Exception e) { if (editable.length() > 0) { editable.delete(index, index + 1); } } } break; default: if (editable.length() < 18) { editable.insert(index, ((TextView) v).getText()); } break; } } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { try { CommetryUtils.releaseCommery(this); } catch (Exception e) { e.printStackTrace(); } finish(); } return false; } @Override public void repeatAction() { int index = 0; Editable editable = null; if (oridEdit.isFocused()) { index = oridEdit.getSelectionStart(); editable = oridEdit.getText(); } else { index = pwdEdit.getSelectionStart(); editable = pwdEdit.getText(); } if (editable.length() > 0) { try { editable.delete(index - 1, index); } catch (Exception e) { if (editable.length() > 0) { editable.delete(index, index + 1); } } } } }