fragment的入門DEMO

來源:互聯網
上載者:User

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal" >        <fragment         android:id="@+id/title"        class="com.njupt.fragment1.TitleFragment"        android:layout_width="0dp"        android:layout_height="fill_parent"        android:layout_weight="1"        />        <FrameLayout         android:id="@+id/detail"        android:layout_width="0dp"        android:layout_height="fill_parent"        android:layout_weight="1"        />    </LinearLayout>


package com.njupt.fragment1;import android.app.FragmentManager;import android.app.FragmentTransaction;import android.app.ListFragment;import android.os.Bundle;import android.view.View;import android.widget.ArrayAdapter;import android.widget.ListView;public class TitleFragment extends ListFragment {private String[] data = new String[]{"星期一","星期二","星期三","星期四","星期五","星期六","星期天"};private int currentPosition = 0;@Overridepublic void onActivityCreated(Bundle savedInstanceState) {super.onActivityCreated(savedInstanceState);setListAdapter(new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_activated_1,android.R.id.text1,data));showDetail(currentPosition);}public void showDetail(int index){FragmentManager fm = getFragmentManager();DetailFragment detail = (DetailFragment) fm.findFragmentById(R.id.detail);if(detail == null || index != detail.getShowIndex()){getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);getListView().setItemChecked(index, true);detail = DetailFragment.getInstance(index);FragmentTransaction ft = fm.beginTransaction();ft.replace(R.id.detail, detail);ft.commit();}}@Overridepublic void onListItemClick(ListView l, View v, int position, long id) {super.onListItemClick(l, v, position, id);    showDetail(position);}}


package com.njupt.fragment1;import android.app.Fragment;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.TextView;public class DetailFragment extends Fragment {private String[] data = new String[]{"星期一","星期二","星期三","星期四","星期五","星期六","星期天",};public static DetailFragment getInstance(int index){DetailFragment df = new DetailFragment();Bundle args = new Bundle();args.putInt("index", index);df.setArguments(args);return df;}public int getShowIndex(){return getArguments().getInt("index");}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {TextView tv = new TextView(getActivity());tv.setText(data[getShowIndex()]);return tv;}}


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.