当前位置: 首页 > 知识库问答 >
问题:

在现有布局(android0)的顶部添加一个透明片段

齐成和
2023-03-14
import android.app.Fragment;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;

import in.webblue.nuclity.Activity.Logs.SaveLog;
import in.webblue.nuclity.R;

import static android.content.Context.MODE_PRIVATE;

/**
 * Created by Akshay on 15-06-2017.
 */

public class TutorialFragment extends Fragment {
    private String Class_Name = "TutorialFragment";
    private  boolean  ranBefore;
    View topLevelLayout1;
    View topLevelLayout2;
    View myView;
    String methodName = "onCreateView";

    public static TutorialFragment newInstance() {
        TutorialFragment f = new TutorialFragment();
        return f;
    }
    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
    Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        myView = inflater.inflate(R.layout.tutorial_layout, container, 
   false);
        topLevelLayout1=myView.findViewById(R.id.tutorial1);
        topLevelLayout2=myView.findViewById(R.id.tutorial2);
        if (!isFirstTime()) {
            topLevelLayout1.setVisibility(View.INVISIBLE);
            topLevelLayout2.setVisibility(View.INVISIBLE);

        }
   return  myView;
}

    private boolean isFirstTime()
    {
        try {
            SharedPreferences preferences = 
         this.getActivity().getSharedPreferences("RanBefore", MODE_PRIVATE);
            boolean ranBefore = preferences.getBoolean("RanBefore", false);
            if (!ranBefore) {

                SharedPreferences.Editor editor = preferences.edit();
                editor.putBoolean("RanBefore", true);
                editor.commit();
                topLevelLayout1.setVisibility(View.VISIBLE);
                topLevelLayout2.setVisibility(View.INVISIBLE);
                topLevelLayout1.setOnTouchListener(new 
                View.OnTouchListener() {

                    @Override
                    public boolean onTouch(View v, MotionEvent event) {
                        topLevelLayout1.setVisibility(View.INVISIBLE);
                        topLevelLayout2.setVisibility(View.VISIBLE);
                        return false;
                    }

                });
                topLevelLayout2.setOnTouchListener(new 
           View.OnTouchListener() {

                    @Override
                    public boolean onTouch(View v, MotionEvent event) {
                        topLevelLayout2.setVisibility(View.INVISIBLE);
                        return false;
                    }

                });


            }
        }
        catch (Exception e){
            Log.e(getClass().getName(),"Method Name :"+methodName+ " "+ e.getStackTrace().toString());
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

      SaveLog.saveLog(getContext(),Class_Name,methodName,e.toString());
            }
        }
        return ranBefore;

    }

}

共有1个答案

姜德泽
2023-03-14

我认为FrameLayout是这里的路。

FrameLayout的秘密在于它如何布局其子级。虽然通常设计为包含一个项目,但它会愉快地将其他元素堆叠在一起。因此,FrameLayout本质上是一种操作屏幕上视图Z顺序的方法

这里有一个关于FrameLayout可以做什么的线程:
FrameLayout做什么?

<FrameLayout>
   <Fragment/>
   <LinearLayout>
   // here is your normal layout
   </LinearLayout>
</>
 类似资料:
  • 我正在苦苦思索如何创建具有自己的布局文件并占据整个屏幕的片段,而不是将它们添加到活动的布局中。 例如,在我的活动中有一个按钮,它应该调用一个RecyclerView片段,该片段占用整个屏幕,让用户选择一个项目,然后返回活动。不过,我找到的所有示例都使用事务来添加或替换活动的布局。我如何制作从它们自己的布局文件膨胀的片段,并从活动中调用它们? 抱歉,我肯定有更好的方式问,但我只是通过文件和视频试图学

  • 我正在使用jetpack导航从片段过渡到细节片段。 我需要帮助在显示细节片段的片段上显示细节片段。 请看下面的照片,看看我正在努力实现什么: 我也在导航图中的动画上使用基本的fade_in/fade_out。 这是我得到的结果: 如何设置转换以使细节片段显示在呈现视图上? 这是我所有的进步: 底部导航菜单 导航图 主要活动。kt Tab1片段(这是带有埃菲尔铁塔图像的片段 赏金编辑: 我希望在导航

  • 实际上,我在JavaSwing中遇到了一个布局问题。我只想在一个框架的底部添加一个JPanel——一个可以在大约5分钟内用每种基于web的语言完成的编码snipplet。在Java中并非如此。我尝试将jPanel添加到包含jContentPane的jFrame中,将jPanel的大小设置为所需大小,重新绘制并重新验证jFrame,并将LayOutManager设置为null。 在本例中,Java向

  • 本文向大家介绍写一个滚动吸顶的布局相关面试题,主要包含被问及写一个滚动吸顶的布局时的应答技巧和注意事项,需要的朋友参考一下

  • 问题内容: 是否可以设置和获取布局的Alpha /不透明度及其所有子视图?我不是在说背景。在相对布局中说出视频控件的集合,例如播放,暂停和进度条。 我可以使用动画淡入淡出,但想知道是否可以使用直接方法。 问题答案: 您可以使用持续时间为0的AlphaAnimation和setFillAfter选项在布局及其子级(或其他任何视图)上设置Alpha。 例: 您可以将一个动画用于多个组件以节​​省内存。

  • 我是刚到爪哇的。我想把我的cardlayout添加到JFrame中。我之所以要这样做,是因为我可以通过关闭jframe在单击exit按钮时退出框架(窗口)。下面的程序是对JFrame的扩展。但我想声明JFrame,并在上面添加卡片。我试过了,但没有成功。我还想把card1的Jpanel设置为500(宽),500(高),但全屏显示。