我想用重置按钮创建一个唯一的ID。我有一个ViewId类。 ViewId类包含AtomicIntegerAtomicInteger成功创建了唯一ID。但是我想使用一个按钮来重置唯一ID。因此请帮助我再次重置并创建唯一ID。
ViewId类别:

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类别:
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。

08-03 15:23