qq_39205783 2017-06-18 04:40 采纳率: 0%
浏览 682

Andriod空指针 麻烦大神看一下~

package com.jinwen.pengu.communication;

import android.Manifest;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.telephony.SmsManager;
import android.telephony.SmsMessage;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import static android.R.id.edit;

public class Dadianhua extends Activity {

private EditText et_main_message;
private Button btn_main_call;
private Button btn_main_send;
private View.OnClickListener onClickListener = new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        if (v == btn_main_call) {
            //Toast.makeText(MainActivity.this,"点击打电话",0);
            //创建一个intent隐式
            String action = "android.intent.action.DIAL";

            Intent intent = new Intent();
            //携带数据
            int number = getIntent().getIntExtra("int_data", 0);
            intent.setData(Uri.parse("tel;" + number));
            //启动
            startActivity(intent);

        } else if (v == btn_main_send) {
            Intent intent = new Intent(Intent.ACTION_SENDTO);
            int number = getIntent().getIntExtra("int_data", 0);
            String message = et_main_message.getText().toString();
            intent.setData(Uri.parse("messageto:" + number));

            //携带额外数据
            intent.putExtra("message_body", message);
            startActivity(intent);

        }

    }
};
private View.OnLongClickListener onLongClickListener = new View.OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
        if (v == btn_main_call) {
            //1.创建一个Intent隐式
            Intent intent = new Intent(Intent.ACTION_CALL);
            //携带数据
            int number = getIntent().getIntExtra("int_data", 0);
            intent.setData(Uri.parse("tel:" + number));
            //3.启动
            startActivity(intent);

        }else if (v==btn_main_send){
            //得到SmsManager对象
            SmsManager smsManager = SmsManager.getDefault();
            //发送文本信息 短信
            int number =getIntent().getIntExtra("int_data",0);
            String message = et_main_message.getText().toString();
            smsManager.sendTextMessage(String.valueOf(number),null,message,null,null);


        }
        return true;
    }
};


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    //初始化试图对象
    et_main_message = (EditText) findViewById(R.id.et_main_message);
    btn_main_call = (Button) findViewById(R.id.btn_main_call);
    btn_main_send= (Button) findViewById(R.id.btn_main_send);
    //点击监听
    **btn_main_call.setOnClickListener(onClickListener);**
    btn_main_send.setOnClickListener(onClickListener);
    //长监听
    btn_main_send.setOnLongClickListener(onLongClickListener);
    btn_main_call.setOnLongClickListener(onLongClickListener);




}

}
btn_main_call.setOnClickListener(onClickListener);这行报错了

内容是空指针

  • 写回答

1条回答 默认 最新

  • baij1230 2017-06-18 08:30
    关注

    可能是r.id.btn_main_call小于0了

    https://my.oschina.net/liusicong/blog/350685

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?