我有一个ListView,我正在使用SimpleCursorAdapter来填充内容,而newView& bindView获取视图。
我想在每次点击行列表上的按钮时启用它,它会加载一个AlertDialog框。
以下是代码:
btn.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
Intent intent = getIntent();
if (intent != null) {
Uri uri = intent.getData();
if (uri != null) {
Cursor cursor = managedQuery(uri, new String[] {
BaseColumns._ID, Database.Project.C_PRICE, Database.Project.C_KEYWORD,
Database.Project.C_SHORTCODE}, null, null, null);
if (cursor == null) {
finish();
} else {
if (cursor.moveToFirst()) {
AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
alertbox.setTitle("SMS");
我总是在这一行上收到错误:AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
它说:The constructor AlertDialog.Builder(new View.OnClickListener(){}) is undefined
我怎么能这样做?
答案 0 :(得分:4)
您正在使用this
创建错误使用AlertDialog.Builder
的{{1}}。您正在应用按钮的侦听器引用来创建AlertDialog.Builder,而您应该具有该Activity的引用。
Activity_name.this
答案 1 :(得分:1)
试试这种方式
btn.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
AlertDialog.Builder alertbox = new AlertDialog.Builder(view.getContext());
}
}