How to make custom dialog with rounded corners in android

前端 未结 16 865
半阙折子戏
半阙折子戏 2020-11-28 02:15

What I am trying to do: I am trying to make a custom dialog in android With rounded corners.

What is happening: I am able to make c

16条回答
  •  一整个雨季
    2020-11-28 02:21

    dimen.xml

    
    
    
        1
    
        21dp
    
        50dp
        5dp
    
        3dp
    
    
    
    

    styles.xml

    
    
        
    
        
    
        
    
     
    
        
    

    dialog_title_style.xml

    
    
    
        
    
        
    
    
    

    dialog_background.xml

    
    
        
        
        
    
    

    dialog_one_button.xml

    
    
    
        
    
        
    
            
    
            
    
                

    OneButtonDialog.java

    package com.example.sametoztoprak.concept.dialogs;
    
    import android.app.Dialog;
    import android.graphics.Color;
    import android.graphics.drawable.ColorDrawable;
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.view.Window;
    import android.widget.Button;
    import android.widget.TextView;
    
    import com.example.sametoztoprak.concept.R;
    import com.example.sametoztoprak.concept.models.DialogFields;
    
    /**
     * Created by sametoztoprak on 26/09/2017.
     */
    
    public class OneButtonDialog extends Dialog implements View.OnClickListener {
    
        private static OneButtonDialog oneButtonDialog;
        private static DialogFields dialogFields;
    
        private Button dialogOneButtonOkButton;
        private TextView dialogOneButtonText;
        private TextView dialogOneButtonTitle;
    
        public OneButtonDialog(AppCompatActivity activity) {
            super(activity);
        }
    
        public static OneButtonDialog getInstance(AppCompatActivity activity, DialogFields dialogFields) {
            OneButtonDialog.dialogFields = dialogFields;
            return oneButtonDialog = (oneButtonDialog == null) ? new OneButtonDialog(activity) : oneButtonDialog;
        }
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            setContentView(R.layout.dialog_one_button);
            getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    
            dialogOneButtonTitle = (TextView) findViewById(R.id.dialogOneButtonTitle);
            dialogOneButtonText = (TextView) findViewById(R.id.dialogOneButtonText);
            dialogOneButtonOkButton = (Button) findViewById(R.id.dialogOneButtonOkButton);
    
            dialogOneButtonOkButton.setOnClickListener(this);
        }
    
        @Override
        protected void onStart() {
            super.onStart();
            dialogOneButtonTitle.setText(dialogFields.getTitle());
            dialogOneButtonText.setText(dialogFields.getText());
            dialogOneButtonOkButton.setText(dialogFields.getOneButton());
        }
    
        @Override
        public void onClick(View v) {
            switch (v.getId()) {
                case R.id.dialogOneButtonOkButton:
    
                    break;
                default:
                    break;
            }
            dismiss();
        }
    }
    

提交回复
热议问题