0

所以我想计算从创建活动到按下按钮的总时间。我可以用我当前的代码做到这一点,但它使用静态变量,我知道这是不好的编程习惯,我还有另一种方法可以做到这一点。

我当前的代码:

static long startTime=0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_quick_touch);
        // Show the Up button in the action bar.
        setupActionBar();
        startTime=System.currentTimeMillis();
}

public void onClick(View view) 
    {
        long endTime = System.currentTimeMillis();
        long time= endTime- startTime;


    }
4

2 回答 2

0

您不需要使用静态变量——非静态成员变量也可以。但是,如果您根本不想弄乱您的活动,您可以为 onClickListener 创建一个私有内部类,并将该时间存储在通过其构造函数传入的成员变量中。

于 2013-05-22T01:35:08.490 回答
0

在您提供的情况下,静态变量不会影响您的代码结果。

此外,当值不变时,没有真正的理由使用变量。

我建议final long startTime;没有初始值。在onCreate.

final long startTime;

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_quick_touch);
    // Show the Up button in the action bar.
    setupActionBar();

    startTime = System.currentTimeMillis();
}

public void onClick(View view) 
{
    long endTime = System.currentTimeMillis();
    long time= endTime- startTime;
}
于 2013-05-22T02:02:02.277 回答