Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android開發入門(十三)特殊碎片 13.2 DialogFragment

Android開發入門(十三)特殊碎片 13.2 DialogFragment

編輯:Android開發教程

我們也可以創建另外一種碎片——DialogFragment。顧名思義,DialogFragment就是一個浮動在Activity 上面的Fragment。當需要用戶的反饋時,DialogFragment就會派上用場。與使用ListFragment類似,需要繼 承DialogFragment基類。

下面將會展示如何使用DialogFragment。

1. 創建一個工程: DialogFragmentExample。

2. 在包路徑下面新建一個類,Fragment1。

public class Fragment1 extends DialogFragment {     
         
    static Fragment1 newInstance(String title) {     
        Fragment1 fragment = new Fragment1();     
        Bundle args = new Bundle();     
        args.putString("title", title);     
        fragment.setArguments(args);     
        return fragment;     
    }     
         
    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) {     
        String title = getArguments().getString("title");     
        return new AlertDialog.Builder(getActivity())     
        .setIcon(R.drawable.ic_launcher)     
        .setTitle(title)     
        .setPositiveButton("OK",     
                new DialogInterface.OnClickListener() {     
            public void onClick(DialogInterface dialog,      
                    int whichButton) {     
                ((DialogFragmentExampleActivity)     
                        getActivity()).doPositiveClick();     
            }     
        })     
        .setNegativeButton("Cancel",     
                new DialogInterface.OnClickListener() {     
            public void onClick(DialogInterface dialog,      
                    int whichButton) {     
                ((DialogFragmentExampleActivity)     
                        getActivity()).doNegativeClick();     
            }     
        }).create();     
    }             
         
}

3. DialogFragmentExampleActivity.java中的代碼。

public class DialogFragmentExampleActivity extends Activity {     
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) {     
        super.onCreate(savedInstanceState);     
        setContentView(R.layout.main);     
                 
        Fragment1 dialogFragment = Fragment1.newInstance(     
                "Are you sure you want to do this?");     
            dialogFragment.show(getFragmentManager(), "dialog");        
    }     
             
    public void doPositiveClick() {     
        //---perform steps when user clicks on OK---     
        Log.d("DialogFragmentExample", "User clicks on OK");     
    }     
         
    public void doNegativeClick() {     
        //---perform steps when user clicks on Cancel---     
        Log.d("DialogFragmentExample", "User clicks on Cancel");     
    }     
         
}

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved