如何解决快速点击View?
How to solve fast click on View?
findViewById(R.id.btn).setOnClickListener(new OnClickListener(){
public void onClick(View v){
startActivity(intent);
}
}
当我快速点击 btn 时,我会调用两次 startActivity。
我发现有些应用没有这个问题,比如新浪微博。
它冻结 activity 直到 startActivity 完成。
如何冻结用户操作util系统操作完成?
在启动 activity
时使用标记 FLAG_ACTIVITY_REORDER_TO_FRONT
intent = new Intent(this, A.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
这将只有一个 activity 在堆栈中,多次按下按钮的速度有多快
您可以保留一个布尔值,例如 boolean isToStartActivity;
findViewById(R.id.btn).setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(isToStartActivity){
isToStartActivity = false
startActivity(intent);
}
}
}
findViewById(R.id.btn).setOnClickListener(new OnClickListener(){
public void onClick(View v){
startActivity(intent);
}
}
当我快速点击 btn 时,我会调用两次 startActivity。
我发现有些应用没有这个问题,比如新浪微博。 它冻结 activity 直到 startActivity 完成。
如何冻结用户操作util系统操作完成?
在启动 activity
时使用标记FLAG_ACTIVITY_REORDER_TO_FRONT
intent = new Intent(this, A.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);
这将只有一个 activity 在堆栈中,多次按下按钮的速度有多快
您可以保留一个布尔值,例如 boolean isToStartActivity;
findViewById(R.id.btn).setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(isToStartActivity){
isToStartActivity = false
startActivity(intent);
}
}
}