TEL:400-8793-956
当前位置:程序、服务器

当我单击该意图时,Nullpointer异常崩溃,不知道该怎么办??

提问者: 近期获赞: 浏览人数: 发布时间:2021-01-26 14:02:16

 问:我正在尝试制作一个Android应用程序,但遇到了这个错误,我不知道该怎么办,为什么从头开始显示该应用程序崩溃,并在日志中出现以下错误:

 
E / AndroidRuntime:致命例外:主
                  进程:com.example.ramy.medicare,PID:2487
                  java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.ramy.medicare / com.example.ramy.medicare.Profile .materialtabs.activity.MainActivity}:java.lang.NullPointerException:尝试
                      在android.app.ActivityThread上的空对象引用上调用虚拟方法'void android.widget.Button.setOnClickListener(android.view.View $ OnClickListener)' 。 performLaunchActivity(ActivityThread.java:2665)
                      在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
                      在android.app.ActivityThread.-wrap12(ActivityThread.java)
                      在android.os.Looper.loop
                      (Looper.java:154)
                      在android.os.Handler.dispatchMessage(Handler.java:102)在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1477 )
                      在android。 app.ActivityThread.main(ActivityThread.java:6119)
                      在java.lang.reflect.Method.invoke(本机方法)
                      在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:886)
                      在COM。 android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
                   
***造成原因:java.lang.NullPointerException:尝试
                      在com.example.ramy.medicare上的空对象引用上调用虚拟方法'void android.widget.Button.setOnClickListener(android.view.View $ OnClickListener)' 。 Profile.materialtabs.activity.MainActivity.onCreate(MainActivity.java:43)***
 
 
                      在android.app.Activity.performCreate(Activity.java:6679)
                      在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
                      在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2618)
                      在android.app。 ActivityThread.handleLaunchActivity(ActivityThread.java:2726) 
                      在android.app.ActivityThread.-wrap12(ActivityThread.java) 
                      在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1477) 
                      在android.os.Handler.dispatchMessage( Handler.java:102), 
                      位于android.os.Looper.loop(Looper.java:154) 
                      在android.app.ActivityThread.main(ActivityThread.java:6119)                        在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:886)
                      上的java.lang.reflect.Method.invoke(本机方法 
) 
                      在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) 
 
 
这是代码:
package com.example.ramy.medicare.Profile.materialtabs.activity;
 
  import android.content.Intent;
  import android.os.Bundle;
  import android.support.v7.app.AppCompatActivity;
  import android.support.v7.widget.Toolbar;
  import android.view.LayoutInflater;
  import android.view.View;
 
  import android.widget.Button;
 
  import com.example.ramy.medicare.R;
 
  public class MainActivity extends AppCompatActivity implements View.OnClickListener {
 
    private Button btnScrollableTabs_b, btnIconTabs_b, btnCustomIconTextTabs_b;
 
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
  //    toolbar = (Toolbar) findViewById(R.id.toolbar);
  //    setSupportActionBar(toolbar);
 
      btnScrollableTabs_b = (Button) findViewById(R.id.btnScrollableTabs);
      btnIconTabs_b = (Button) findViewById(R.id.btnIconTabs);
      btnCustomIconTextTabs_b = (Button) findViewById(R.id.btnCustomIconTabs);
 
      //at these lines is the error:
      **btnScrollableTabs_b.setOnClickListener(this); 
      btnIconTabs_b.setOnClickListener(this);
      btnCustomIconTextTabs_b.setOnClickListener(this);**
 
 
 
  //    btnSimpleTabs = (Button) findViewById(R.id.btnSimpleTabs);
  //    btnScrollableTabs = (Button) findViewById(R.id.btnScrollableTabs);
  //    btnIconTextTabs = (Button) findViewById(R.id.btnIconTextTabs);
  //    btnIconTabs = (Button) findViewById(R.id.btnIconTabs);
  //    btnCustomIconTextTabs = (Button) findViewById(R.id.btnCustomIconTabs);
 
  //    btnSimpleTabs.setOnClickListener(this);
 
  //    btnScrollableTabs.setOnClickListener(this);
  //    btnIconTextTabs.setOnClickListener(this);
  //    btnIconTabs.setOnClickListener(this);
  //    btnCustomIconTextTabs.setOnClickListener(this);
 
  }
 
    @Override
    public void onClick(View view) {
      switch (view.getId()) {
 
        case R.id.btnScrollableTabs:
          startActivity(new Intent(MainActivity.this, ScrollableTabsActivity.class));
          break;
        case R.id.btnIconTabs:
          startActivity(new Intent(MainActivity.this, IconTabsActivity.class));
          break;
        case R.id.btnCustomIconTabs:
          startActivity(new Intent(MainActivity.this, CustomViewIconTextTabsActivity.class));
          break;
      }
    }
  }
请告诉我该怎么办,我很困惑,我实例化了该对象,所以为什么会出现此错误?
 
答:借助推特自动化,您可以最大程度地影响自己的推文,并确保大多数关注者都能看到它们。安排推文并不难-大多数人可能至少做过一次。这是最佳的Twitter自动化工具列表。
 
一个推特工具列表一定要提到Hootsuite,这就是该工具流行和有效的原因。通过此工具可以同时管理Twitter,Facebook和LinkedIn,这是每个认真的在线营销人员的必备条件。如果您碰巧同时管理多个Twitter帐户,那么Hootsuite是一个很棒的插件,可让您自动在多个配置文件中重新发送推文。
 
社区
 
当您关注Twitter个人资料并在周五宣布前3名关注的关注者时,向您发送感谢信息的人会转发或欢迎您。嗯,这就是Commun所做的。您还可以安排鸣叫和自动化很多事情,这将增加您的Twitter个人资料的参与度。
 
缓冲
 
对于倾向于短时间发推的用户而言,Buffer只是其中最好的Twitter工具之一。您可能会通过这种推文失去有价值的关注者。全天分布的tweet往往会转换得更好,而Buffer可让您将tweet安排为一天中表现最佳的时间。均衡的推文时间表是有组织的个人的标志,应吸引您更多的注意力。
 
答:您在(findviewbyid())之前设置了列表器。在空对象上设置了列表器,此后您获得按钮的ID。
 
首先在按钮,视图等上设置列表器之后获取所有ID
上一篇: 如何执行完整的Twitter自动化
下一篇: 从外部py脚本访问Models.py