我正在制作一个带有 fragment 的登录页面,但是每当我运行该应用程序时,我只会得到一个白色的屏幕,没有编辑文本,也没有按钮。
登录 fragment
public class LoginFragment extends Fragment {
private View view;
private Button btcancel;
private EditText etpassword;
private Button btlogin;
private EditText etusername;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
view=inflater.inflate(R.layout.login_frag,container,false);
return view;
}
private void initialize() {
btcancel = (Button) getActivity().findViewById(R.id.bt_cancel);
etpassword = (EditText) getActivity().findViewById(R.id.et_password);
btlogin = (Button) getActivity().findViewById(R.id.bt_login);
etusername = (EditText) getActivity().findViewById(R.id.et_user_name);
}
}
登录 Activity
public class LoginActivity extends Activity {
private FragmentTransaction fragmentTransaction;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
fragmentSetUp();
}
private void fragmentSetUp() {
fragmentTransaction=getFragmentManager().beginTransaction();
LoginFragment loginFragment=new LoginFragment();
fragmentTransaction.add(loginFragment,"login").commit();
}
}
最佳答案
您需要有一个父布局来放置 fragment ,但在您的情况下,您可以使用 android 的默认布局作为 fragment 的父容器。
解决方法:
fragmentTransaction=getFragmentManager().beginTransaction();
LoginFragment loginFragment=new LoginFragment();
fragmentTransaction.add(android.R.id.content,loginFragment,"login").commit();
关于android - 调用 fragment 时只显示白屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24569254/