我已经使用Java添加了碎片。
当我以纵向模式打开应用程序时,它可以正常工作。
如果我旋转屏幕,碎片就会消失。
但是,如果我关闭应用程序,然后旋转手机,再次打开应用程序,它可以正常工作。
我有两个不同的布局,一个用于纵向模式,另一个用于横向模式,两者名称相同。我将纵向布局放在“layout”文件夹中,将横向布局放在“layout-land”文件夹中。
看起来好像我忘记了什么,实际上我是 Android 开发新手。
活动:
当我以纵向模式打开应用程序时,它可以正常工作。
如果我旋转屏幕,碎片就会消失。
但是,如果我关闭应用程序,然后旋转手机,再次打开应用程序,它可以正常工作。
我有两个不同的布局,一个用于纵向模式,另一个用于横向模式,两者名称相同。我将纵向布局放在“layout”文件夹中,将横向布局放在“layout-land”文件夹中。
看起来好像我忘记了什么,实际上我是 Android 开发新手。
活动:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ListFragment frag = new ListFragment();
setContentView(R.layout.layout_main);
FragmentManager manager = getFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.add(R.id.LIST_LAYOUT,frag,"LIST");
transaction.commit();
}
碎片:
public class ListFragment extends Fragment implements AdapterView.OnItemClickListener{
ListView List;
Communicator communicator;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//return super.onCreateView(inflater, container, savedInstanceState);
return inflater.inflate(R.layout.mlistfragment,container,false);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
communicator = (Communicator) getActivity();
List = (ListView) getActivity().findViewById(R.id.listView);
ArrayAdapter adapter = ArrayAdapter.createFromResource(getActivity(),R.array.StrListButtons,android.R.layout.simple_list_item_1);
List.setAdapter(adapter);
List.setOnItemClickListener(this);
}