Android 使用半透明状态标志在活动中正确设置SlidengAppAnel定位点

Android 使用半透明状态标志在活动中正确设置SlidengAppAnel定位点,android,sliding,Android,Sliding,我的活动有一个半透明的状态栏,我似乎无法为Umano向上滑动面板找到正确的定位点。我想要实现的仍然是让向上滑动面板向上滑动到状态栏的右下方。我知道这在非半透明状态栏活动中非常容易。但是在半透明的状态栏活动中呢 mLayout.setAnchorPoint((getScreenHeight()-getStatusBarHeight())/getScreenHeight(‌​)); } public float getScreenHeight() { DisplayMetrics metr

我的活动有一个半透明的状态栏,我似乎无法为Umano向上滑动面板找到正确的定位点。我想要实现的仍然是让向上滑动面板向上滑动到状态栏的右下方。我知道这在非半透明状态栏活动中非常容易。但是在半透明的状态栏活动中呢

mLayout.setAnchorPoint((getScreenHeight()-getStatusBarHeight())/getScreenHeight(‌​));
}

public float getScreenHeight() {
    DisplayMetrics metrics = getResources().getDisplayMetrics();
    float height = metrics.heightPixels; return height;
}

public float getStatusBarHeight() {
    int result = 0;
    int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
    if (resourceId > 0) {
        result = getResources().getDimensionPixelSize(resourceId);
    }
    return result;
}

您能分享到目前为止的代码吗?mLayout.setAnchorPointgetScreenHeight-getStatusBarHeight/getScreenHeight;}公共浮点getScreenHeight{DisplayMetrics metrics=getResources.getDisplayMetrics;浮点height=metrics.heightPixels;返回高度;}公共浮点getStatusBarHeight{int result=0;int resourceId=getResources.getIdentifierstatus\u bar\u height,dimen,android;如果resourceId>0{result=getResources.getDimensionPixelSizeresourceId;}返回结果;}嘿,对不起,老兄,我是个堆栈溢出新手。不知道这里的代码如何格式化。不管怎样,我的解决方案是我有两种方法,分别获取窗口高度和状态栏高度。然后设置SlideingUpPanelayout.setAnchorPointscreenHeight-statusBarHeight/screenHeight;现在,向上滑动面板将与状态栏重叠一点这不是一个理想的解决方案。在我复制到代码中的注释中的代码段中有一个额外的}。是否正确?额外的括号是onCreate方法的结束括号。我认为其中的其余代码无关紧要。我还考虑过在onPanelExpanded和onPanelCollapsed方法中动态设置和清除半透明的_STATUS_标志,但这也会导致一些问题。滑动面板确实会滑动到正确的位置,但状态栏会出错。状态栏不会变成半透明,这会导致活动窗口被向下推到状态栏下方。