Выход нулевой точки в view.setonclicklistener
у меня есть эта проблема она показывает мне это erreur
07-27 10:15:09.177 4518-4518/com.example.android.projectdestage E/AndroidRuntime: фатальное исключение: main
Процесс: com.example.android.projectdestage, PID: 4518
java.lang.RuntimeException: не удается запустить activity ComponentInfo{com.example.android.projectdestage/com.example.android.projectdestage.MainActivity}: java.lang.NullPointerException: попытка вызвать виртуальный метод 'void android.view.View.setOnClickListener(android.view.View$OnClickListener)' по ссылке на нулевой объект
в android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2984)
в android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045)
в android.app.ActivityThread.-wrap14(ActivityThread.java)
в android.app.ActivityThread$H. handleMessage(ActivityThread.java:1642)
в android.os.Handler.dispatchMessage(Handler.java:102)
на Андроид.ОС."Петля времени".петли(лупер.Ява:154)
в android.app.ActivityThread.main(ActivityThread.java:6776)
в java.lang.reflect.Method.invoke(собственный метод)
в com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1518)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
Вызванные: Java для.яз.NullPointerException: попытка вызвать виртуальный метод 'void android.view.View.setOnClickListener(android.view.View$OnClickListener)' по ссылке на нулевой объект
в com.example.android.projectdestage.В MainActivity.init2(в MainActivity.Ява:58)
в com.example.android.projectdestage.В MainActivity.метод onCreate(класс MainActivity.Ява:38)
в android.app.Activity.performCreate(Activity.java:6956)
на Андроид.приложение.Контрольно-измерительные приборы.callActivityOnCreate(контрольно-измерительные приборы.Ява:1126)
в android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927)
в android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3045)
в android.app.ActivityThread.-wrap14(ActivityThread.java)
в android.app.ActivityThread$H. handleMessage(ActivityThread.java:1642)
в android.os.Handler.dispatchMessage(Handler.java:102)
на Андроид.ОС."Петля времени".петли(лупер.Ява:154)
в android.app.ActivityThread.main(ActivityThread.java:6776)
в java.lang.reflect.Method.invoke(собственный метод)
в com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1518)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
пожалуйста любая помощь я не знаю как это исправить
Что я уже пробовал:
import android.app.Dialog; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.Toast; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GoogleApiAvailability; public class MainActivity extends AppCompatActivity { private Button sms; private Button btnMap; private static final String TAG = "MainActivity"; private static final int ERROR_DIALOG_REQUEST = 9001; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.setContentView(R.layout.activity_main); if(isServicesOK()){ init(); init2(); } } private void init(){ Button btnMap = (Button) findViewById(R.id.btnMap); btnMap.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent = new Intent(MainActivity.this, MapActivity.class); startActivity(intent); } }); } private void init2() { Button sms = (Button) findViewById(R.id.sms); sms.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent message = new Intent(MainActivity.this, MainActivity2.class); startActivity(message); } }); } public boolean isServicesOK() { Log.d(TAG, "isServicesOK: checking google services version"); int available = GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(MainActivity.this); if(available == ConnectionResult.SUCCESS) { // koulchi mli7 map request Log.d(TAG, "isServicesOK: Google Play Services is working"); return true; } else if(GoogleApiAvailability.getInstance().isUserResolvableError(available)) { //test d erreur Log.d(TAG, "isServicesOK: an error occured but we can fix it"); Dialog dialog = GoogleApiAvailability.getInstance().getErrorDialog(MainActivity.this, available, ERROR_DIALOG_REQUEST); dialog.show(); }else { Toast.makeText(this, "You can't make map requests", Toast.LENGTH_SHORT).show(); } return false; } }
David Crow
sms
является нулевым.
_Starbug_
ошибка находится в методе init2() и в строке 58.