gpt4 book ai didi

java - 使用 switch 语句处理 fragment 中的 onBackPressed()

转载 作者:太空宇宙 更新时间:2023-11-04 12:49:50 24 4
gpt4 key购买 nike

我正在尝试为每个 fragment 以不同的方式处理 onBackPressed 。为此,我想使用 switch 语句,其中的情况取决于当前显示的 fragment 。在我的主要我有。但不知道在 switch 语句中使用什么。

public class MyActivity extends Activity
{
@Override
public void onBackPressed(){
super.onBackPressed();
switch(........){
case (1):
Fragment1.onBackPressed();
case (2):
Fragment2.onBackPressed();
}
}

在我的 fragment 中:

public class Fragment1 extends Fragment
{
//My created method
public static void onBackPressed()
{
// make it do what you want.
}
}

所以我的问题是,我如何使用 switchstament,其中案例取决于此时显示的 fragment 。

最佳答案

不要在 Activity 的单个 onBackpressed 中使用此类开关,但您可以获取每个 Fragment 对象的关键事件并执行以下操作,

fragment.getView().setFocusableInTouchMode(true); //Don't miss this line
fragment.getView().setOnKeyListener( new OnKeyListener()
{
@Override
public boolean onKey( View v, int keyCode, KeyEvent event )
{
if( keyCode == KeyEvent.KEYCODE_BACK )
{
//Do what you want
return true;
}
return false;
}
} );

关于java - 使用 switch 语句处理 fragment 中的 onBackPressed(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35935426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com