【Android】SystemUI的StatusBar添加自定义按键

问题

为StatusBar添加自定义按键,且不作为系统按键事件进行处理
导入u盘进行配置后显示旋转按钮且实现对应按键的效果

布局

status_bar.xml

不在系统原生的SystemUI下,且一般重写的SystemUI都有被overlay

<com.android.systemui.statusbar.policy.KeyButtonView
            android:id="@+id/status_bar_rotate_screen"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:src="@drawable/ic_rotate_screen"
            systemui:keyCode="0"
            android:visibility="gone"
        />

对照原有的Home键进行修改
systemui:keyCode:对应系统按键的value值,赋值0,不做系统按键处理

处理

StatusBar.java

    private void rotateScreen(){
        Log.i(TAG,"rotateScreen() enter!!!");
        KeyButtonView mRotateScreen = mStatusBarView.findViewById(R.id.status_bar_rotate_screen);
        mRotateScreen.setVisibility(View.VISIBLE);
        mRotateScreen.setOnClickListener(new OnClickListener(){
            @Override
            public void onClick(View v) {
                Log.i(TAG,"rotateScreen: onClick!!!");
                //事件处理
            }
        });
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值