Как я могу использовать кнопки или любое пользовательское представление ввода на странице просмотра?

В основном у меня есть три кнопки на странице 1 вьюпейджера. и я хочу выбрать один из них и получить значение в свою базу данных. но когда я нажимаю на любую кнопку, появляется сообщение об ошибке:

Вызвано: java.lang.NullPointerException: попытка вызвать виртуальный метод void android.widget.Button.setOnClickListener (android.view.View $ OnClickListener) для ссылки на нулевой объект в com.example.itsandpro.Signup.PreferenceActivity.onCreate (PreferenceActivity.java:88) в android.app.Activity.performCreate (Activity.java:6679) в android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1118)

и мой код для кнопки на странице просмотра:

myViewPagerAdapter = новый MyViewPagerAdapter (); viewPager.setAdapter (myViewPagerAdapter);

    weightloss=findViewById(R.id.reduceweight);
    maintainweight=findViewById(R.id.controlthecalories);
    gainweight=findViewById(R.id.goodphysique);

    weightloss.setOnClickListener(new View.OnClickListener() {
        @SuppressLint("ShowToast")
        @Override
        public void onClick(View v) {
            Toast.makeText(getApplicationContext(),"it worked",Toast.LENGTH_LONG);
        }
    });

мне нужно нажать кнопку, но я не могу этого сделать.

0
0
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Согласно reference at com.example.itsandpro.Signup.PreferenceActivity.onCreate(PreferenceActivity.java:88), вы устанавливаете свой OnClickListener в своей деятельности, что не заметно в вставленном вами коде.

Когда вы используете ViewPager, вы также используете фрагменты.

Мероприятия

  • ViewPager

    • Фрагмент 1
    • Фрагмент 2
    • Фрагмент 3

Если вы хотите добавить прослушиватель щелчков кнопки, которая находится на фрагменте 1 (Basically i have three buttons on viewpager's page 1), вам нужно зарегистрируйте прослушиватель кликов в своем фрагменте, а не в вашей Activity потому что макет вашей активности не содержит этих кнопок.

Если я ошибаюсь, обновите свой вопрос, указав код вашей активности, макет вашей активности и код вашего первого фрагмента плюс окно просмотра.

Другие вопросы по теме