Я создал представление с вкладками, и в одном из фрагментов я использовал refre sh представление, которое я хочу обновить sh фрагментом при перелистывании .... но что использовать в моем методе do (), который вызванный onswiperefreshed ... как новичок, пожалуйста, помогите мне, что использовать в моем методе do (), чтобы повторно sh фрагмент снова ....
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/constraintLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.main.PlaceholderFragment">
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
android:id="@+id/swipeToRefresh"
android:layout_width='match_parent'
android:layout_height="wrap_content">
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
</LinearLayout>
Вот мой placeholderFragment. java
public class PlaceholderFragment extends Fragment {
ListView listView;
FirebaseDatabase database;
DatabaseReference ref;
ArrayList<String> list;
ArrayAdapter<String> adapter;
User user;
SwipeRefreshLayout mSwipeRefreshLayout;
private static final String ARG_SECTION_NUMBER = "section_number";
private PageViewModel pageViewModel;
public static PlaceholderFragment2 newInstance(int index) {
PlaceholderFragment2 fragment = new PlaceholderFragment2();
Bundle bundle = new Bundle();
bundle.putInt(ARG_SECTION_NUMBER, index);
fragment.setArguments(bundle);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
pageViewModel = ViewModelProviders.of(this).get(PageViewModel.class);
int index = 1;
if (getArguments() != null) {
index = getArguments().getInt(ARG_SECTION_NUMBER);
}
pageViewModel.setIndex(index);
mSwipeRefreshLayout = (SwipeRefreshLayout).findViewById(R.id.swipeToRefresh);
mSwipeRefreshLayout.setColorSchemeResources(R.color.colorPrimaryDark);
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
do();
mSwipeRefreshLayout.setRefreshing(false);
}
});
}
@Override
public View onCreateView(
@NonNull LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View root = inflater.inflate(R.layout.fragment_main, container, false);
user = new User();
final ListView listView = root.findViewById(R.id.listView);
database= FirebaseDatabase.getInstance();
ref = database.getReference();
list = new ArrayList<>();
adapter = new ArrayAdapter<String>(getActivity(),R.layout.user_info,R.id.userInfo,list);
ref.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot ds: dataSnapshot.getChildren() ){
user = ds.getValue(User.class);
list.remove(user.getName().toString()+"
\n"+user.getEmail()+"\n"+user.getPhone()+":"+user.getPassword());
list.add(user.getName().toString()+"
\n"+user.getEmail()+"\n"+user.getPhone()+":"+user.getPassword());
Date date = Calendar.getInstance().getTime();
DateFormat dateFormat = new SimpleDateFormat("hh:mm");
String strDate = dateFormat.format(date);
String[] time = strDate.split ( ":" );
int hour = Integer.parseInt ( time[0].trim() );
int min = Integer.parseInt ( time[1].trim() );
Integer i= Integer.valueOf(user.getPhone());
if (i==min) {
list.remove(user.getName().toString()+"
\n"+user.getEmail()+"\n"+user.getPhone()+":"+user.getPassword());
}
}
listView.setAdapter(adapter);
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
return root;
}
public void do() {
};
}