如何在Android中将视图置于最前面并使其他视图保持在其后面?

时间:2019-07-01 04:51:33

标签: android android-layout

我正在尝试制作一个Android应用程序,这样,当我单击某个特定视图时,它将带到每个视图的前面,而让其他视图停留在它后面,变得颜色略显暗淡。 例如:此whatsapp配置文件显示布局。(该配置文件位于每件事的顶部,我们可以与之交互)

我想知道特定小部件的相关关键字,主题或名称,以学习最终实现该视图以及动画。任何达成解决方案的方法也将不胜感激。

我尝试使用不同的方法将图像显示在最前面,等等。但这并不能解决问题。

5 个答案:

答案 0 :(得分:1)

您可以通过创建自定义提醒对话框并将其布局放大来实现此目的。

providerData: JSON.parse(JSON.stringify(authUser.providerData))

对于R.layout。 dialog_cvv_help ,您可以根据需要设计布局。您只需使用以下代码行即可显示它。

public class CvvHelpDialog extends Dialog {

    public CvvHelpDialog(@NonNull Activity context) {
        super(context);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.dialog_cvv_help);

        WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
        lp.copyFrom(getWindow().getAttributes());
        lp.width = WindowManager.LayoutParams.MATCH_PARENT;
        getWindow().setAttributes(lp);

    }
}

答案 1 :(得分:1)

创建一个activityfragment,并在activityfragment的中心放置透明的背景和图像。只需启动新活动或显示片段即可。

或者您也可以为此使用DialogFragment

您可以使用元素过渡进行动画播放,以从其他类似WhatsApp个人资料图片的前面弹出视图。

答案 2 :(得分:1)

您可以使用Dialog。 对话框后面的屏幕会自动变暗。您无需执行任何操作。

https://androidexample.com/Custom_Dialog_-_Android_Example/index.php?view=article_discription&aid=88

答案 3 :(得分:1)

只需创建对话框,然后添加您的自定义视图即可...

AlertDialog.Builder builder =new AlertDialog.Builder(this);
View view = LayoutInflater.from(this).inflate(R.layout.custom_layout,null);
builder.setView(view);
builder.show();

出现对话框时。背景将自动透明。

答案 4 :(得分:0)

您可以创建一个视图,该视图的自定义视图位于中心,并且在同一布局中以灰色背景环绕该视图。当需要显示时-将其显示并为背景视图组设置isEnable = false