如何通过在Activity中调用FragmentManager的findFragmentByIdint id方法来获取
在Activity中调用FragmentManager的findFragmentById(int id)方法来获取Fragment的步骤如下:
-
首先,在Activity中获取FragmentManager的实例。可以通过调用getSupportFragmentManager()方法来获取FragmentManager,或者使用getFragmentManager()方法(仅适用于API级别为11或更高)。
-
使用FragmentManager的findFragmentById(int id)方法,传入Fragment的id作为参数。这个id是在布局文件中为Fragment指定的android:id属性的值。
-
如果findFragmentById方法找到了与给定id匹配的Fragment,它将返回一个Fragment对象。你可以将其存储在一个变量中以供后续使用。
以下是一个示例代码,演示如何在Activity中使用findFragmentById方法来获取Fragment:
import androidx.fragment.app.Fragment;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
private Fragment mFragment;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取FragmentManager实例
androidx.fragment.app.FragmentManager fragmentManager = getSupportFragmentManager();
// 使用findFragmentById方法获取Fragment
mFragment = fragmentManager.findFragmentById(R.id.fragment_container);
// 检查是否找到了Fragment
if (mFragment != null) {
// 找到了Fragment,可以进行相应的操作
// ...
}
}
}
这样,通过调用FragmentManager的findFragmentById方法,你就可以在Activity中获取到指定id的Fragment对象了

原文地址: http://www.cveoy.top/t/topic/imtI 著作权归作者所有。请勿转载和采集!