如何在Android中点击打开电池使用情况

时间:2013-06-28 15:44:54

标签: android onclick android-button battery

我想通过点击按钮打开电池使用设置。代码是这样的:

Button btnusage = (Button)findViewById(R.id.batteryusage);
Button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        openOptionsBatt();
    }
});

方法:

public openOptionsBatt(View v) {
    Intent intentBatteryUsage = new Intent(Intent.ACTION_POWER_USAGE_SUMMARY);        
    startActivity(intentBatteryUsage);
}

应用程序崩溃onCreate ..为什么?

2 个答案:

答案 0 :(得分:0)

尝试更改

Button btnusage = (Button)findViewById(R.id.batteryusage);
Button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        openOptionsBatt();
    }
});

Button btnusage = (Button)findViewById(R.id.batteryusage);
btnusage.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        openOptionsBatt();
    }
});

请注意,在第二个代码段中,您使用的是btnusage,而不是Button。您希望OnClickListener附加到Button的实例而不是类Button本身。

此外,当您的方法openOptionsBatt();需要1时,您使用pass 0参数调用public openOptionsBatt(View v)。我会将public openOptionsBatt(View v)更改为0参数。您在方法签名中也缺少关键字void

public void openOptionsBatt()

答案 1 :(得分:0)

似乎:

public openOptionsBatt(View v) { ... }

获取视图“v”,但是当您使用该方法本身时,您忘记设置视图:

openOptionsBatt();

根据之前和之前建议的更改,尝试将代码更改为以下内容:

Button btnusage = (Button) findViewById(R.id.batteryusage);
btnusage.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        openOptionsBatt(v);
    }
});

希望这有帮助。