Android(安卓)避免重复提交
16lz
2021-01-25
不曾想,android系统也会有重复提交的问题。网上搜了下,基本没有出现过类似的问题。或许只是android早把这个问题解决了,而我只是不知道而已。
下面说说我的解决方案吧。首先,你提交是有一个触发事件监听的。这就涉及到两个东西,一个是被触发的对象,令一个是触发事件监听。
触发对象可以是任意的一个View对象。而监听是你手动创建的,所以也是可控的。
我的解决思路如下:在触发对象调用监听的时候,把触发对象设置为不可用。在当前Activity激活后再将触发对象设置为可用状态。
参考代码如下:
btn1= (Button)findViewById(R.id.btn1); btn1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(HandwritingActivity.this,Test2Activity.class); startActivity(intent); v.setEnabled(false);//将当前触发控件给禁用 } });
然后在Activity被激活后,再将触发对象设置为可用状态。
@Override protected void onRestart() { super.onRestart(); btn1.setEnabled(true);//将触发控件设置为可用 //tv1.setEnabled(true); }
所有继承自View的控件对象都有该属性,所以你不用担心这个属性是不存在的。各位如果有更好的解决方案也可以拿出来晒一晒。
更多相关文章
- android 拖动控件例子
- 调用对象[置顶] Android通过调用Webservice实现天气预报
- Android(安卓)UI之ProgressBar
- Android窗口管理服务WindowManagerService对窗口的组织方式分析
- Android艺术探索读书笔记 -IPC机制
- Android(安卓)MTP框架和流程分析
- 自定义区间滑动取值控件
- Android程序安装后图标不显示
- 【Android】UI设计之界面布局