我如何在 viewpager 上使用按钮或任何用户输入视图?
how can i use buttons or any user Input view on viewpager?
基本上我在 viewpager 的第 1 页上有三个按钮。我想 select 其中之一并将值存入我的数据库。但是当我点击任何一个按钮时,它会显示一个错误:
原因: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)
我在 viewpager 的按钮代码是:
myViewPagerAdapter = new 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);
}
});
我需要的是 select 按钮,但我做不到。
根据 reference at com.example.itsandpro.Signup.PreferenceActivity.onCreate(PreferenceActivity.java:88)
,您在 Activity 中设置了 OnClickListener,这在您粘贴的代码中并不明显。
当您使用 ViewPager 时,您也在使用 Fragment。
Activity
ViewPager
- 片段 1
- 片段 2
- 片段 3
如果您想为 Fragment 1 (Basically i have three buttons on viewpager's page 1
) 上的按钮添加点击监听器,您必须 在您的 Fragment 中注册点击监听器,而不是在您的 Activity 因为您 activity 的布局不包含此按钮。
如果我错了,请用 activity 的代码、activity 的布局和第一个片段的代码加上 viewpager。
基本上我在 viewpager 的第 1 页上有三个按钮。我想 select 其中之一并将值存入我的数据库。但是当我点击任何一个按钮时,它会显示一个错误:
原因: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)
我在 viewpager 的按钮代码是:
myViewPagerAdapter = new 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);
}
});
我需要的是 select 按钮,但我做不到。
根据 reference at com.example.itsandpro.Signup.PreferenceActivity.onCreate(PreferenceActivity.java:88)
,您在 Activity 中设置了 OnClickListener,这在您粘贴的代码中并不明显。
当您使用 ViewPager 时,您也在使用 Fragment。
Activity
ViewPager
- 片段 1
- 片段 2
- 片段 3
如果您想为 Fragment 1 (Basically i have three buttons on viewpager's page 1
) 上的按钮添加点击监听器,您必须 在您的 Fragment 中注册点击监听器,而不是在您的 Activity 因为您 activity 的布局不包含此按钮。
如果我错了,请用 activity 的代码、activity 的布局和第一个片段的代码加上 viewpager。