【发布时间】:2020-05-20 17:01:53
【问题描述】:
我已经搜索了几天,但无济于事。我有以下问题:我有一个 MainActivity,它与这个问题几乎无关。在这个主要活动中,我有一个片段。这个片段包含一个视图页面,其元素也是一个片段。现在,我在 viewpager 片段布局中声明了一个按钮,我想在“父”片段中调用它。有什么想法???
现在,继续我已经尝试过的内容。我尝试直接调用,然后尝试在任一片段中声明 OnClickListener,并且还尝试使用 callbaciks。然而,这些解决方案都没有奏效......
我有很多对你没用的代码,所以我只强调重要的部分
父片段(ScheduleFragment)
button_cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Are you Sure?")
.setMessage("There's no coming back!")
.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
}
})
.setPositiveButton("yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
deleteThis(viewPager2.getCurrentItem());
SharedPreferences preferences = getActivity().getSharedPreferences("Settings", Context.MODE_PRIVATE);
SharedPreferences.Editor sEditor = preferences.edit();
Integer position = preferences.getInt("Number of Days", 3) + 1;
sEditor.putInt("Number of Days", position);
sEditor.apply();
}
});
builder.show();
}
});
我的孩子片段(ViewPager_ScheduleObject
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
Bundle args = getArguments();
((TextView) view.findViewById(R.id.textview_viewpager_schedule))
.setText("Day " + args.getInt(ARG_OBJECT));
ViewPager2_Schedule_Adapter viewPager2_schedule_adapter= new ViewPager2_Schedule_Adapter(this);
SharedPreferences sharedPreferences = getActivity().getSharedPreferences("Settings", Context.MODE_PRIVATE);
Button button_cancel = view.findViewById(R.id.button_cancel_day);
button_cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
如果您需要更多代码,请务必告诉我!任何帮助表示赞赏!
【问题讨论】:
标签: android android-studio android-layout android-fragments