J'ai une activité principale qui comprend un SwipeRefreshLayout
. L'activité contient fragments
.Désactiver MainActivity SwipeRefreshLayout à partir de Fragment
Je souhaite désactiver le SwipeRefreshLayout
à partir d'un fragment particulier, étant donné que le mouvement de glissement de la SwipeRefreshLayout
interfère avec le mouvement de défilement de la ExpandableListView
sur le fragment.
Pour cela, j'ai essayé ce qui suit, sans succès:
sur le Fragment je:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.listfragment, container, false);
//......
expListView = (ExpandableListView) v.findViewById(R.id.expandableList);
final MainActivity mainAct = (MainActivity) getActivity();
//.......
expListView.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
@Override
public void onGroupExpand(int groupPosition) {
Log.d("test","Disabled");
//SwipeRefreshLayout is called swipeRefreshLayout on MainActivity
mainAct.swipeRefreshLayout.setEnabled(false);
}
});
Après avoir exécuté ce, je peux voir le message journal, de sorte que le swipeRefreshLayout
devrait être fixé à faux, mais le geste déroulant pour la SwipeRefreshLayout travaille
Postez votre code d'activité ainsi –