Android的BottomSheet覆盖了一半的锚定ImageView。
创始人
2024-10-07 04:30:06
0

要实现Android的BottomSheet覆盖一半的锚定ImageView,可以按照以下步骤进行操作:

  1. 在XML布局文件中添加ImageView和BottomSheet控件:


    

    

        

    


  1. 在Activity或Fragment中使用BottomSheetBehavior控制BottomSheet的显示和隐藏:
import com.google.android.material.bottomsheet.BottomSheetBehavior;

public class YourActivity extends AppCompatActivity {
    private BottomSheetBehavior bottomSheetBehavior;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.your_layout);

        // 获取BottomSheet控件
        LinearLayout bottomSheetLayout = findViewById(R.id.bottomSheetLayout);

        // 设置BottomSheet的最大高度为屏幕高度的一半
        int screenHeight = getResources().getDisplayMetrics().heightPixels;
        ViewGroup.LayoutParams layoutParams = bottomSheetLayout.getLayoutParams();
        layoutParams.height = screenHeight / 2;
        bottomSheetLayout.setLayoutParams(layoutParams);

        // 初始化BottomSheetBehavior
        bottomSheetBehavior = BottomSheetBehavior.from(bottomSheetLayout);
        bottomSheetBehavior.setHideable(true);
        bottomSheetBehavior.setPeekHeight(layoutParams.height);
        bottomSheetBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);

        // 设置ImageView的点击事件,点击时显示/隐藏BottomSheet
        ImageView anchorImageView = findViewById(R.id.anchorImageView);
        anchorImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (bottomSheetBehavior.getState() == BottomSheetBehavior.STATE_HIDDEN) {
                    bottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
                } else {
                    bottomSheetBehavior.setState(BottomSheetBehavior.STATE_HIDDEN);
                }
            }
        });
    }
}

通过上述代码,当点击ImageView时,BottomSheet会从底部滑动出现覆盖一半的锚定ImageView,再次点击ImageView时,BottomSheet会滑动回底部隐藏起来。

相关内容

热门资讯

透视代打ai!佛手在线大菠萝技... 透视代打ai!佛手在线大菠萝技巧(透视)开挂辅助技巧(果然存在有挂)-哔哩哔哩一、佛手在线大菠萝技巧...
3分钟妙计!皮皮游戏破解器,微... 3分钟妙计!皮皮游戏破解器,微友辅助神器下载,教你攻略(真是有挂)-哔哩哔哩运微友辅助神器下载辅助工...
透视好友房!wepoker透视... 透视好友房!wepoker透视破解版,拱趴大菠萝挂怎么安装,攻略教程(其实是真的挂)-哔哩哔哩1、许...
透视开挂!wepoker辅助是... 透视开挂!wepoker辅助是真的吗(透视)开挂辅助脚本(一贯存在有挂)-哔哩哔哩wepoker辅助...
8分钟手册!微信边锋小程序辅助... 8分钟手册!微信边锋小程序辅助器免费,欢乐达人暗堡破解,详细教程(有挂秘诀)-哔哩哔哩1、完成微信边...
透视安装!wepoker手机版... 透视安装!wepoker手机版辅助,wepoker黑侠辅助器正版下载,操作教程(竟然存在有挂)-哔哩...
透视软件!wepoker免费透... 透视软件!wepoker免费透视脚本(透视)开挂辅助app(原来是真的挂)-哔哩哔哩1、点击下载安装...
九分钟手段!心悦海南苹果版辅助... 九分钟手段!心悦海南苹果版辅助,创思维激k辅助器免费,力荐教程(有挂教程)-哔哩哔哩在进入创思维激k...
透视真的!hhpoker智能辅... 透视真的!hhpoker智能辅助插件,wepoker透视脚本,窍要教程(确实有挂)-哔哩哔哩1、不需...
六分钟攻略!多乐辅助下载,心悦... 六分钟攻略!多乐辅助下载,心悦踢坑神器软件下载,可靠技巧(真的有挂)-哔哩哔哩心悦踢坑神器软件下载是...