如何重置 Android 中的 AtomicInteger 唯一 ID?
How to reset AtomicInteger unique Id in Android?
我想创建一个带有重置按钮的唯一 ID。我有一个 class ViewId
.ViewId
class 包含 AtomicInteger
。 AtomicInteger
创建唯一 ID successfully.But 我想使用 button.So 重置唯一 ID 请帮我重新设置并重新创建唯一 ID。
ViewId
Class :
import java.util.concurrent.atomic.AtomicInteger;
public class ViewId {
private static ViewId INSTANCE = new ViewId();
private AtomicInteger seq;
private ViewId() {
seq = new AtomicInteger(0);
}
public int getUniqueId() {
return seq.incrementAndGet();
}
public static ViewId getInstance() {
return INSTANCE;
}
}
MainActivity
Class :
public class MainActivity extends AppCompatActivity {
EditText editValue;
ViewId viewId = ViewId.getInstance();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editValue = (EditText)findViewById(R.id.editText);
}
// Increment Button
public void floatIncrement(View view) {
Log.e("Incremented value is : ", String.valueOf(viewId.getUniqueId()));
}
// Reset Button
public void resetBtn(View view) {
// reset here
}
}
只需调用 seq.set(0)
,这应该会使您的 AtomicInteger
回到 0。
我想创建一个带有重置按钮的唯一 ID。我有一个 class ViewId
.ViewId
class 包含 AtomicInteger
。 AtomicInteger
创建唯一 ID successfully.But 我想使用 button.So 重置唯一 ID 请帮我重新设置并重新创建唯一 ID。
ViewId
Class :
import java.util.concurrent.atomic.AtomicInteger;
public class ViewId {
private static ViewId INSTANCE = new ViewId();
private AtomicInteger seq;
private ViewId() {
seq = new AtomicInteger(0);
}
public int getUniqueId() {
return seq.incrementAndGet();
}
public static ViewId getInstance() {
return INSTANCE;
}
}
MainActivity
Class :
public class MainActivity extends AppCompatActivity {
EditText editValue;
ViewId viewId = ViewId.getInstance();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editValue = (EditText)findViewById(R.id.editText);
}
// Increment Button
public void floatIncrement(View view) {
Log.e("Incremented value is : ", String.valueOf(viewId.getUniqueId()));
}
// Reset Button
public void resetBtn(View view) {
// reset here
}
}
只需调用 seq.set(0)
,这应该会使您的 AtomicInteger
回到 0。