2016-09-17 37 views
0

我需要在對話框後面的模糊背景。我找到了很好的解決方案,使用這個鏈接https://github.com/tvbarthel/BlurDialogFragment但在這個庫中沒有指定如何集成自定義視圖。在代碼中顯示我們需要在OnCreateDialog方法中創建AlertDialog,但是我們可以在onCreateDialog方法中使用setcontentview()。如何在BlurDialogFragment中添加自定義視圖

@NonNull 
    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) { 
     AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 
     View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_fragment, null); 
     TextView label = ((TextView) view.findViewById(R.id.textView)); 
     label.setMovementMethod(LinkMovementMethod.getInstance()); 
     Linkify.addLinks(label, Linkify.WEB_URLS); 
     builder.setView(view); 
     return builder.create(); 
    } 
+0

http://tvbarthel.fr/blur-dialog-fragment.html – W4R10CK

回答

1

您可以創建擴展BlurDialogFragment類,並在onCreateView方法,你可以虛增您的自定義佈局。 請參見下面的例子:

public class CustomDialogFragment extends BlurDialogFragment { 


@Override 
protected boolean isActionBarBlurred() { 
    // Enable or disable the blur effect on the action bar. 
    // Disabled by default. 
    return true; 
} 

@Override 
protected int getBlurRadius() { 
    // Allow to customize the blur radius factor. 
    return 7; 
} 

@Override 
protected boolean isDimmingEnable() { 
    // Enable or disable the dimming effect. 
    // Disabled by default. 
    return false; 
} 


@Override 
public View onCreateView(LayoutInflater inflater, final ViewGroup container, 
         Bundle savedInstanceState) { 
    View v = inflater.inflate(R.layout.dialog_fragment_layout, container, false); 


    return v; 
} 

顯示您在活動對話框:

FragmentManager fragmentManager = getFragmentManager(); 
CustomDialogFragment cdf = new CustomDialogFragment(); 
cdf.show(fragmentManager,"yourTag"); 
相關問題