gpt4 book ai didi

Android Theme.NoTitleBar 不起作用

转载 作者:太空狗 更新时间:2023-10-29 15:46:36 36 4
gpt4 key购买 nike

我的应用程序中有一个类似于 facebook 的滑动菜单栏,其中应用程序的两个内容和主要布局由自定义布局类处理。

我想删除我的应用程序的标题栏

问题:

即使我放置

android:Theme.Light.NoTitleBar

在我的 list 中,标题栏有一个空白区域。因此,我的整个布局被向下推。

我试过用

requestWindowFeature(Window.FEATURE_NO_TITLE);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

但标题栏空间仍未删除。

这是应用程序的样子

enter image description here

enter image description here

我认为这是由于包含主要滑动布局的 Custom LinearLayout 类引起的。但我无法从自定义布局类中删除标题栏空间。提出更好的解决方案。

自定义布局类

   public class MainLayout extends LinearLayout {
public MainLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MainLayout(Context context) {
super(context);
}

// Overriding LinearLayout core methods
// layout based on the children
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);

mainLayoutWidth = MeasureSpec.getSize(widthMeasureSpec);
menuRightMargin = mainLayoutWidth * 10 / 100;
}

@Override
protected void onAttachedToWindow() {
super.onAttachedToWindow();
menu = this.getChildAt(0);
content = this.getChildAt(1);
content.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return MainLayout.this.onContentTouch(v, event);
}
});

@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
if(changed) {
LayoutParams contentLayoutParams = (LayoutParams)content.getLayoutParams();
contentLayoutParams.height = this.getHeight();
contentLayoutParams.width = this.getWidth(); LayoutParams menuLayoutParams = (LayoutParams)menu.getLayoutParams();
menuLayoutParams.width = this.getWidth() - menuRightMargin;
}

menu.layout(left, top, right - menuRightMargin, bottom);
content.layout(left + contentXOffset, top, right + contentXOffset, bottom);

}
}

最佳答案

你可以直接在activity的manifest文件中指定

<activity android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">

关于Android Theme.NoTitleBar 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20323137/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com