如何实现Android appwidget的叠加?

时间:2015-09-11 04:21:52

标签: android android-widget android-appwidget

我正在制作一些应用程序的小部件,它放在手机的主屏幕上。在配置活动中,我想添加叠加选项 - 复选框。但我不确定appwidget是否可以使用叠加。

请你告诉我,appwidget可以使用叠加(不仅在主屏幕上显示,而且在其他应用程序的顶部显示),如果是这样 - 我如何为Android应用程序小部件实现叠加?

P.S。:我想成为android初级开发者,并且很乐意以源代码为例。

感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用对话框片段,使其覆盖整个屏幕

public class OverlayFragment extends DialogFragment {

    static Overlay newInstance() {

        Overlay f = new Overlay();
        return f;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       // setStyle(STYLE_NO_FRAME, android.R.style.Theme);
        this.setCancelable(false);


    }

    @Override
    public void onStart() {
        super.onStart();
        final Window window = getDialog().getWindow();
        window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT);
        window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
        window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.circular_progress_bar, container, false);
        view.setBackgroundColor(Color.parseColor("#80000000"));
        getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
        return view;
    }

R.layout.circular_progress_bar是包含进度条的布局