gpt4 book ai didi

android - "类型 new View.OnClickListener(){} 必须实现继承的抽象方法 View.OnClickListener.OnClick(View)

转载 作者:行者123 更新时间:2023-11-29 15:16:58 27 4
gpt4 key购买 nike

我正在学习 android 开发的初学者教程,但我不明白这个错误。

错误在行“callButton.setOnClickListener(new OnClickListener() {”

是的,我知道代码写得不好,有点困惑,我会在它工作后清理它。

我正在尝试添加一个按钮来打开联系人列表并允许您调用电话。包 com.example.contactpicker;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.content.ContentUris;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.Contacts.Intents;
import android.provider.ContactsContract.CommonDataKinds;
import android.provider.ContactsContract;
import android.view.MenuInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class ContactPickerTester extends Activity {

public static final int PICK_CONTACT = 1;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_contact_picker_tester);

Button button = (Button) findViewById(R.id.button1);


button.setOnClickListener(new OnClickListener() {


public void onClick(View _view) {
Intent intent = new Intent(Intent.ACTION_PICK, Uri
.parse("content://contacts/"));
startActivityForResult(intent, PICK_CONTACT);
}
});


Button insertContactButton = (Button) findViewById(R.id.button2);
insertContactButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
insertContactWithIntent();
}
});
}


private void insertContactWithIntent() {
//inserting a new contact using intents//
Intent intent = new Intent(Intent.ACTION_INSERT,
ContactsContract.Contacts.CONTENT_URI);
startActivity(intent);



Button callButton = (Button) findViewById(R.id.button3);

callButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v){
Intent myIntent = new Intent(Intent.ACTION_DIAL, Uri.parse("content://contacts/"));
startActivity(myIntent);
}
});
}
@Override
public void onActivityResult(int reqCode, int resCode, Intent data) {
super.onActivityResult(reqCode, resCode, data);

switch (reqCode) {
case (PICK_CONTACT): {
if (resCode == Activity.RESULT_OK) {
Uri contactData = data.getData();
Cursor c = managedQuery(contactData, null, null, null, null);
c.moveToFirst();
String name = c
.getString(c
.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));
TextView tv = (TextView) findViewById(R.id.selected_contact_textview);
tv.setText(name);
}
break;
}
}
}
}

最佳答案

很简单,因为你写的OnClick的“O”是大写的,是小写的。

所以你必须替换这条线

public void OnClick(View v){

public void onClick(View v){

注意大小写变化。

关于android - "类型 new View.OnClickListener(){} 必须实现继承的抽象方法 View.OnClickListener.OnClick(View),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23350866/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com