精华内容
下载资源
问答
  • DialogFragment

    2017-05-01 06:38:02
    DialogFragment
  • dialogFragment

    2017-03-17 18:09:35
    dialogFragment
        <style name="FilterDialog">
            <item name="android:windowFrame">@null</item>
            <item name="android:backgroundDimEnabled">true</item>
            <item name="android:windowIsTranslucent">true</item>
            <item name="android:windowContentOverlay">@null</item>
            <item name="android:windowBackground">@android:color/transparent</item>
        </style>
    
    
    package com.eebochina.ehr.ui.employee.detail;
    
    import android.app.DialogFragment;
    import android.content.Intent;
    import android.net.Uri;
    import android.provider.ContactsContract;
    import android.view.View;
    import android.widget.TextView;
    
    import com.eebochina.ehr.R;
    import com.eebochina.ehr.base.BaseDialogFragment;
    import com.eebochina.ehr.commons.ContentView;
    
    /**
     * Created by User on 2017/3/17.
     */
    @ContentView(R.layout.dialog_phone)
    public class PhoneDialog extends BaseDialogFragment {
    
        private TextView mCancelAction;
        private TextView mOption1;
        private TextView mOption2;
    
        private boolean isAdd = false;
    
        private String mPhone, mName;
    
    
        @Override
        protected void init() {
            super.init();
            setStyle(DialogFragment.STYLE_NORMAL, R.style.FilterDialog);
        }
    
        @Override
        public void initView(View view) {
            mCancelAction = $(R.id.dialog_phone_cancel);
            mOption1 = $(R.id.dialog_phone_option1);
            mOption2 = $(R.id.dialog_phone_option2);
        }
    
    
        public PhoneDialog(String mPhone, String mName) {
            this.mPhone = mPhone;
            this.mName = mName;
        }
    
        private void changeOptionText() {
            if (isAdd) {
                mOption1.setText("添加到已有联系人");
                mOption2.setText("创建新的联系人");
            }
        }
    
    
    
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.dialog_phone_cancel:
                    this.dismiss();
                    break;
                case R.id.dialog_phone_option2:
                    if (!isAdd) {
                        Intent intent = new Intent(Intent.ACTION_DIAL);
                        intent.setData(Uri.parse("tel:" + mPhone));
                        context.startActivity(intent);
                    } else {
                        Intent oldConstantIntent = new Intent(Intent.ACTION_INSERT_OR_EDIT);
                        oldConstantIntent.setType(ContactsContract.Contacts.CONTENT_ITEM_TYPE);
                        oldConstantIntent.putExtra(ContactsContract.Intents.Insert.PHONE, mPhone);
                        oldConstantIntent.putExtra(ContactsContract.Intents.Insert.NAME, mName);
                        oldConstantIntent.putExtra(ContactsContract.Intents.Insert.PHONE_TYPE, 3);
                        startActivity(oldConstantIntent);
                    }
                    break;
                case R.id.dialog_phone_option1:
                    if (!isAdd) {
                        isAdd = true;
                        changeOptionText();
                    } else {
                        Intent addIntent = new Intent(Intent.ACTION_INSERT, Uri.withAppendedPath(Uri.parse("content://com.android.contacts"), "contacts"));
                        addIntent.setType("vnd.android.cursor.dir/person");
                        addIntent.setType("vnd.android.cursor.dir/contact");
                        addIntent.setType("vnd.android.cursor.dir/raw_contact");
                        addIntent.putExtra(ContactsContract.Intents.Insert.PHONE, mPhone);
                        addIntent.putExtra(ContactsContract.Intents.Insert.NAME, mName);
                        startActivity(addIntent);
                    }
                    break;
            }
        }
    }
    
    展开全文
  • Dialogfragment

    2020-12-09 05:35:52
    <div><p>Proposed fix for #14 (and a few other updates)</p><p>该提问来源于开源项目:greysonp/permiso</p></div>
  • DialogFragment

    2014-05-22 19:53:26
    Dialog类public class TestDialog extends DialogFragment implements View.OnClickListener{ TextView textView; EditText editText; Button button_save; Button button_dismiss; Button butto

    Dialog类

    public class TestDialog extends DialogFragment implements View.OnClickListener{
        TextView textView;
        EditText editText;
        Button button_save;
        Button button_dismiss;
        Button button_help;
                  
        public static TestDialog newInstant(String prompt)
        {
            TestDialog td = new TestDialog();
            Bundle bundle = new Bundle();
            bundle.putString("prompt", prompt);
            td.setArguments(bundle);
            return td;
        }
        public void onClick(View arg0) {
            OnDialogDoneListener act = (OnDialogDoneListener) getActivity();
            if(arg0.getId() == R.id.btn_dismiss)
            {
                act.onDialogDone(getTag(), true, null);
                dismiss();
                return;
            }
            if(arg0.getId() == R.id.btn_help)
            {
                          
            }
            if(arg0.getId() == R.id.btn_save)
            {
    //          TextView v = (TextView)getView().findViewById(R.id.textView);
                act.onDialogDone(getTag(), false, editText.getText());
                dismiss();
                return;
            }
        }
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View v = inflater.inflate(R.layout.dialog, container, false);
                      
            textView = (TextView)v.findViewById(R.id.promptmessage);
            editText = (EditText)v.findViewById(R.id.inputtext);
                      
            button_save = (Button)v.findViewById(R.id.btn_save);
            button_dismiss = (Button)v.findViewById(R.id.btn_dismiss);
            button_help = (Button)v.findViewById(R.id.btn_help);
                      
            button_save.setOnClickListener(this);
            button_dismiss.setOnClickListener(this);
            button_help.setOnClickListener(this);
                      
            return v;
        }

    activity实现自定义的一个借口,与Dialog类交互

    public interface OnDialogDoneListener {
        public void onDialogDone(String tag, boolean cancel, CharSequence message);
    }

    activity类:

    public class MainActivity extends Activity implements OnDialogDoneListener {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
    //      getMenuInflater().inflate(R.menu.main, menu);
            super.onCreateOptionsMenu(menu);
            menu.add(0, 0, 0, "dialog");
            return true;
        }
        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            // TODO Auto-generated method stub
            switch(item.getItemId())
            {
            case 0:
                testDialog();
            }
            return super.onOptionsItemSelected(item);
        }
        @TargetApi(Build.VERSION_CODES.HONEYCOMB)
        @SuppressLint("NewApi")
        private void testDialog()
        {
            TestDialog td = TestDialog.newInstant("xia");
            FragmentManager fm = getFragmentManager();
            FragmentTransaction ft = fm.beginTransaction();
            td.show(ft, "Test Dialog");
        }
        public void onDialogDone(String tag, boolean cancel, CharSequence message)
        {
            String s = tag + "responds with : " + message;
            if(cancel)
            {
                s = tag + " was cancelled by the user";
            }
            Toast.makeText(this, s, Toast.LENGTH_LONG);
            Log.v("log_debug", s);
        }
    }


    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,921
精华内容 1,168
关键字:

dialogfragment