首页 > 解决方案 > 在框架布局中显示/隐藏布局 onTouch

问题描述

我有一个完整的图像片段。framelayout中有RelativeLayout和LinearLayout。LinearLayout 包含 viewpager。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/framelayout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/linearLayoutViewpager">


    <com.bogdwellers.pinchtozoom.view.ImageViewPager
        android:id="@+id/viewpager"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />


</LinearLayout>

<RelativeLayout
    android:id="@+id/relativelayoutforbuttons"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

    <Button
        android:id="@+id/save_img"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Save" />


</RelativeLayout>

我希望当用户第一次打开它时,它应该只显示图像(Viewpager 布局),如果用户单击它会显示其他选项,例如 - 共享和保存(RelativeLayout)。我们可以在 facebook 和 whatsapp 中找到这种类型的功能。

标签: androidandroid-framelayout

解决方案


试试这个类型代码的可见性..

private void share(){
    relativeLayout.setVisibility(View.VISIBLE);
    linearLayoutViewpager.setVisibility(View.GONE);
}


 linearLayoutViewpager=findViewById(R.id.linearLayoutViewpager);
    linearLayoutViewpager.setVisibility(View.VISIBLE);
    relativeLayout=findViewById(R.id.relativelayoutforbuttons);
    relativeLayout.setVisibility(View.GONE);

它只是示例代码,但根据您的需要进行管理。

     final boolean flag=true;
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if (flag){
                relativeLayout.setVisibility(View.VISIBLE);
                flag=false;
            }
            else{
                relativeLayout.setVisibility(View.GONE);
            }
        }
    });

推荐阅读