button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } });中new view.onclicklistener变灰
时间: 2024-02-14 16:23:09 浏览: 115
"new view.onclicklistener" 变灰通常是因为您的开发环境没有正确导入 View.OnClickListener 这个类。您可以检查您的项目是否正确导入了 Android SDK,并且您的代码中是否正确导入了该类。如果您使用的是 Android Studio,您可以尝试使用快捷键 Alt + Enter,然后选择 "Import class" 以解决这个问题。
相关问题
解释mEmptyList = (TextView) findViewById(R.id.scanStateBar); Button cancelButton = (Button) findViewById(R.id.btn_cancel); cancelButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { if (mScanning==false) scanDevice(true); else finish();
这段代码的作用是在Android应用中,找到布局文件中的id为"scanStateBar"和"btn_cancel"的控件并将它们分别赋值给变量mEmptyList和cancelButton。接下来,给cancelButton添加一个点击事件监听器,当用户点击这个按钮时,会执行onClick方法中的代码。在这段代码中,首先判断mScanning变量的值是否为false,如果是,则调用scanDevice方法并传入true作为参数,否则直接调用finish方法关闭当前活动。
package com.t.myapplication; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.another); /* 新建一个Intent对象 */ Button button = (Button) findViewById(R.id.next); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(MainActivity .this, OddDaysActivity.class); startActivity(intent); } }); Intent intent = new Intent(); /* 指定intent要启动的类 */ MainActivity .this.startActivity(intent); /* 关闭当前的Activity */ MainActivity .this.finish(); intent.setClass(MainActivity .this,OddDaysActivity.class); /* 启动一个新的Activity */ } }
在这段代码中,你新建了一个 Intent 对象,但是没有为它设置任何的 Action、Category、Data 等信息,所以在启动 Activity 的时候出现了 ActivityNotFoundException 异常。
此外,你在 Intent 对象之后直接关闭了当前的 Activity,这也会导致启动下一个 Activity 失败。
你需要将启动下一个 Activity 的代码放到按钮的 onClick() 方法中,并为 Intent 对象设置正确的目标 Activity。另外,不要在 Intent 对象之后直接关闭当前的 Activity。
可以参考下面的代码:
```java
package com.t.myapplication;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.another);
Button button = (Button) findViewById(R.id.next);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this, OddDaysActivity.class);
startActivity(intent);
}
});
}
}
```
阅读全文