Android 基础控件- EditText
2017-03-07 16:29
281 查看
需求: 实现文本的撤销操作。
主要的代码:mEditText = ((EditText) findViewById(R.id.editText)); mPerformEdit = new PerformEdit(mEditText){ @Override protected void onTextChanged(Editable s) { //文本发生改变,可以是用户输入或者是EditText.setText触发.(setDefaultText的时候不会回调) super.onTextChanged(s); } }; mPerformEdit.setDefaultText("这是初始值,不能撤销的值"); }
监听操作:
mPerformEdit.undo() 撤销mPerformEdit.redo() 复原
mPerformEdit.clearHistory() 清空历史
Demo:
public class MainActivity extends AppCompatActivity { private EditText mEditText; private PerformEdit mPerformEdit; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mEditText = ((EditText) findViewById(R.id.editText)); mPerformEdit = new PerformEdit(mEditText){ @Override protected void onTextChanged(Editable s) { //文本发生改变 super.onTextChanged(s); } }; mPerformEdit.setDefaultText("default"); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_editor,menu); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { int itemId = item.getItemId(); if(itemId ==R.id.action_undo){ mPerformEdit.undo();//撤销操作 return true; }else if(itemId == R.id.action_redo){ mPerformEdit.redo();//复原 return true; }else if(itemId == R.id.action_clear){ mPerformEdit.clearHistory(); return true; } return super.onOptionsItemSelected(item); }}
相关文章推荐
- android 基础控件 EditText
- Android基础控件 -- EditText
- Android基础控件之TextView与EditText
- 【android基础学习之三】——基础控件Toast,EditText,RadioGroup,RadioButton
- Android用户界面基础之TextView控件,EditText控件,Button控件的学习
- Android 开发基础篇——UI——基础控件(TextView、Button、EditText)
- Android:基础控件之(三)输入框 EditText
- Android基础控件——EditText的自定义、高仿iOS的UITextField
- Android界面设计基础:控件焦点4个步骤
- 【android基础学习之二】——基础控件ListView
- android EditText控件如何禁止输入内容
- Android游戏开发系统控件-EditText
- Android游戏开发系统控件-EditText
- 系出名门 Android(6) - 控件(View)之DatePicker, TimePicker, ToggleButton, EditText, ProgressBar, SeekBar, AutoCompleteTextView, MultiAuto
- android学习中关于Textview,Button,EditText,连接的设置,Intent,Activity不同状态等的一系列基础知识点
- [Android]在游戏的SurfaceView中获取输入与使用EditText,Spinner等控件的方法
- Android基础控件之Menu和Dialog
- Android 基础控件说明
- Android界面设计基础:控件焦点4个步骤_12点圆形布局
- 【android基础学习之五】——基础控件Menu,Dialog,ImageView,ImageButton