Android 中Fragment使用

public class MainActivity extends Activity {public static String[] array = { "item1,", "item2", "item3", "item4","item5", "item6", "item7", "item8" };@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}public static class FirstFragment extends ListFragment{boolean mDualPane;int mCurCheckPosition = 0;@Overridepublic void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState); System.out.println("Fragment-->onCreate");}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// TODO Auto-generated method stubSystem.out.println("Fragment-->onCreateView");return super.onCreateView(inflater, container, savedInstanceState);}@Overridepublic void onPause() {// TODO Auto-generated method stubsuper.onPause();System.out.println("Fragment-->onPause");}@Overridepublic void onStop() {// TODO Auto-generated method stubsuper.onStop();System.out.println("Fragment-->onStop");}@Overridepublic void onAttach(Activity activity) {// TODO Auto-generated method stubsuper.onAttach(activity);System.out.println("Fragment-->onAttach");}@Overridepublic void onStart() {// TODO Auto-generated method stubsuper.onStart();System.out.println("Fragment-->onStart");}@Overridepublic void onResume() {// TODO Auto-generated method stubsuper.onResume();System.out.println("Fragment-->onResume");}@Overridepublic void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();System.out.println("Fragment-->onDestroy");}@Overridepublic void onActivityCreated(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onActivityCreated(savedInstanceState);System.out.println("Fragment-->onActivityCreted");setListAdapter(new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, array));View detailsFrame = getActivity().findViewById(R.id.right_frame);mDualPane = detailsFrame != null&& detailsFrame.getVisibility() == View.VISIBLE;if (savedInstanceState != null) {mCurCheckPosition = savedInstanceState.getInt("curChoice", 0); }if (mDualPane) {getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);showDetails(mCurCheckPosition);}}@Overridepublic void onSaveInstanceState(Bundle outState) {// TODO Auto-generated method stubsuper.onSaveInstanceState(outState);outState.putInt("curChoice", mCurCheckPosition);}@Overridepublic void onListItemClick(ListView l, View v, int position, long id) {// TODO Auto-generated method stubsuper.onListItemClick(l, v, position, id);showDetails(position);}void showDetails(int index) {mCurCheckPosition = index; if (mDualPane) {getListView().setItemChecked(index, true);RightFragment details = (RightFragment) getFragmentManager().findFragmentById(R.id.right_frame); if (details == null || details.getShownIndex() != index) {details = RightFragment.newInstance(mCurCheckPosition); FragmentTransaction ft = getFragmentManager().beginTransaction();ft.replace(R.id.right_frame, details);ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);ft.commit();}} else {new AlertDialog.Builder(getActivity()).setTitle(android.R.string.dialog_alert_title).setMessage(array[index]).setPositiveButton(android.R.string.ok,null).show();}}}public static class RightFragment  extends Fragment {@Overridepublic void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setHasOptionsMenu(true);}public static RightFragment newInstance(int index) { RightFragment details = new RightFragment();Bundle args = new Bundle();args.putInt("index", index);details.setArguments(args);return details;}public int getShownIndex() {return getArguments().getInt("index", 0);}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// TODO Auto-generated method stubif (container == null)return null;ScrollView scroller = new ScrollView(getActivity());TextView text = new TextView(getActivity());int padding = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 4, getActivity().getResources().getDisplayMetrics());text.setPadding(padding, padding, padding, padding);scroller.addView(text);text.setText(array[getShownIndex()]);return scroller;}@Overridepublic void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {// TODO Auto-generated method stubsuper.onCreateOptionsMenu(menu, inflater); menu.add("Menu 1a").setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);            menu.add("Menu 1b").setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// TODO Auto-generated method stubToast.makeText(getActivity(), "index is"+getShownIndex()+" && menu text is "+item.getTitle(), 1000).show();return super.onOptionsItemSelected(item);}}

台州人在杭州 IT交流群 416194041

欢迎在杭州的台州老乡加入交流!

更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. android CTS测试
  2. android命令行打包、签名+自动打包器
  3. android菜单
  4. Android(安卓)调用地图显示信息
  5. Android(安卓)SDK 在线更新镜像服务器资
  6. Android(安卓)Listview 隐藏滚动条
  7. 【转】android之uses-permission
  8. Dojo mobile TweetView 系列教程之五 —
  9. 关于Android资源文件中出现百分号的问题
  10. Android(安卓)TextView 支持的HTML标签