package com.jky.fragment.test;
public class User {
private int id;
}
public class MyListFragment extends ListFragment implements OnItemClickListener{
ListView listView;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
this.setHasOptionsMenu(true);
super.onCreate(savedInstanceState);
}
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
// TODO Auto-generated method stub
showDetail(position);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
// TODO Auto-generated method stub
// listView = this.getListView();
//设置适配器
ArrayAdapter adapter = ArrayAdapter.createFromResource(this.getActivity(),
R.array.week,
android.R.layout.simple_list_item_1);
this.setListAdapter(adapter);
this.getListView().setOnItemClickListener(this);
showDetail(0);
super.onActivityCreated(savedInstanceState);
}
public void showDetail(int position){
//显示对应的fragment:替换
FragmentManager fm = this.getFragmentManager();
//这是旧的fragment,有可能为空
Fragment old_fragment = fm.findFragmentById(R.id.framelayout);
//这是新产生的fragmetn
MyContentFragment new_fragment = MyContentFragment.getInstance(position);
//启动事务来替换
if(old_fragment!=null&&old_fragment.getArguments().getInt("index")==position){
//啥事不用干
return;
}
FragmentTransaction fragmentTransaction = fm.beginTransaction();
fragmentTransaction.replace(R.id.framelayout, new_fragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// TODO Auto-generated method stub
menu.add(0, 0, 0, "菜单");
super.onCreateOptionsMenu(menu, inflater);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// TODO Auto-generated method stub
Toast.makeText(getActivity(), "新建成功", 1).show();
return super.onOptionsItemSelected(item);
}
}
public class MyContentFragment extends Fragment{
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
TextView tv = new TextView(this.getActivity());
//如果选择的是星期一,new 一个星期的fragment
Bundle bundle = (Bundle) this.getArguments();
int weekday = bundle.getInt("index");
switch (weekday) {
case 0:
//星期一
tv.setText("今天是星期一,心情平缓");
break;
case 1:
//星期二
tv.setText("今天是星期一,心情麻木");
break;
case 2:
//星期三
tv.setText("今天是星期二,心情萎靡");
break;
case 3:
//星期四
tv.setText("今天是星期一,心情急躁");
break;
case 4:
//星期五
tv.setText("今天是星期一,心情激动");
break;
default:
break;
}
return tv;
}
public static MyContentFragment getInstance(int position){
MyContentFragment new_fragment = new MyContentFragment();
Bundle bundle = new Bundle();
bundle.putInt("index", position);
new_fragment.setArguments(bundle);
return new_fragment;
}
}