【问题标题】:How to reset AtomicInteger unique Id in Android?如何在 Android 中重置 AtomicInteger 唯一 ID?
【发布时间】:2015-11-29 15:29:26
【问题描述】:

我想创建一个带有重置按钮的唯一 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
}
}

【问题讨论】:

  • 你想在哪里使用这个id。我没有看到它被使用?
  • @Diyoda 我有两个按钮 1.floatIncrement,2.resetBtn。当我单击增量按钮时,我想将 id 存储在数据库中。我在日志中显示结果..floatIncrement btn 增加值(例如:1,2,3,..)。当我单击resetBtn 我想要再次(1,2,3,...)顺序..
  • 我很高兴有人帮助了你。我昨天没时间看。对此感到抱歉

标签: java android uniqueidentifier


【解决方案1】:

只需调用seq.set(0),这应该会使您的AtomicInteger 恢复为0。

【讨论】:

  • @hipokito 我不知道它是否仍然有用,但我会假设静态代码分析器正在标记它,对吗?如果是这样,您可以将“0”声明为常量,例如。 private static final int INITIAL_VAL = 0;
猜你喜欢
  • 2011-11-09
  • 1970-01-01
  • 2015-05-10
  • 1970-01-01
  • 1970-01-01
  • 2021-07-27
  • 1970-01-01
  • 1970-01-01
  • 2020-06-15
相关资源
最近更新 更多