我想知道如何将全屏主题(没有标题栏+没有操作栏)应用于某个活动.我正在使用支持包v7中的AppCompat库.
我试图申请android:theme="@android:style/Theme.NoTitleBar.Fullscreen"我的具体活动,但它崩溃了.我认为这是因为我的应用程序主题是这样的.
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
Run Code Online (Sandbox Code Playgroud)
我也尝试过这个
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
Run Code Online (Sandbox Code Playgroud)
它只隐藏标题栏但不隐藏操作栏.我目前的解决方法是隐藏动作栏
getSupportActionBar().hide();
Run Code Online (Sandbox Code Playgroud) 我只是Android应用程序开发的初学者.当我在Android Studio 1.1.0上创建一个新项目时,它放弃了这个错误" 渲染问题无法找到以下类:android.support.v7.internal.widget.ActionBarOverlayLayout "
现在我在google上搜索了这个,我发现大多数人可能会给出3个解决方案.
他们说:
将api(从预览窗口窗格)从22更改为21,或者
将应用主题从"项目主题"更改为任何其他主题.
一定要在项目结构中导入正确的appcompat-v7库 - >依赖项, 请参考以下步骤:将支持库功能项目标识符添加到依赖项部分.例如,要包含appcompat项目,请将compile"com.android.support:appcompat-v7:18.0.+"添加到依赖项部分,如以下示例所示:
Run Code Online (Sandbox Code Playgroud)dependencies { ... compile "com.android.support:appcompat-v7:18.0.+" }
注意:我的android支持lib是最新的(使用SDK Manager安装它).
按照前两个步骤,删除错误.但我觉得这些不是永久的解决方案,第二步似乎就像一个临时的解决方法.我对第一步也有疑问,如果要删除错误,我们将api从22更改为21,最后,我们的应用程序将无法在Android 5.1.1(API 22)中运行,它将仅限于Android 5.0 .1及以下(API 21).我的疑惑有效吗?关于第三步,它是这个问题的永久解决方案吗?
PS:很抱歉标注不匹配,由于网站声誉,不允许添加确切的标记
最近我在Android工作室的应用程序中将我的sdk从25改为26,我在我的所有xml中都遇到了这个奇怪的错误.此刻的误差不afecting我的应用程序以任何方式我可以看到,但是是烦人看到每次我有编辑或更改的XML一些时间.这里的错误:
无法实例化以下类 - android.support.v7.widget.AppCompatTextView
java.lang.NullPointerException
at android.content.res.Resources_Delegate.getValue(Resources_Delegate.java:788)
at android.content.res.Resources.getValue(Resources.java:1286)
at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:212)
at android.support.v4.content.res.ResourcesCompat.getFont(ResourcesCompat.java:206)
at android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.java:119)
at android.support.v7.widget.AppCompatTextHelper.updateTypefaceAndStyle(AppCompatTextHelper.java:208)
at android.support.v7.widget.AppCompatTextHelper.loadFromAttributes(AppCompatTextHelper.java:152)
at android.support.v7.widget.AppCompatTextHelperV17.loadFromAttributes(AppCompatTextHelperV17.java:38)
at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:81)
at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:71)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:475)
at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:250)
at org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:213)
at com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadClass(LayoutlibCallbackImpl.java:193)
at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:333)
at android.view.BridgeInflater.onCreateView(BridgeInflater.java:152)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:717)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:785)
at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:222)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727)
at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:858)
at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at com.android.layoutlib.bridge.bars.CustomBar.<init>(CustomBar.java:95)
at com.android.layoutlib.bridge.bars.StatusBar.<init>(StatusBar.java:67)
at com.android.layoutlib.bridge.impl.Layout.createStatusBar(Layout.java:224)
at com.android.layoutlib.bridge.impl.Layout.<init>(Layout.java:146)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:301)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:368)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:567)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:549) …Run Code Online (Sandbox Code Playgroud) 嗨,我必须将我的应用程序主题更改为“Theme.AppCompat.Light.NoActionBar”。但是在我更改它之后,应用程序崩溃了。我找不到问题出在哪里:/
我的目标是在工具栏上扩展我的导航抽屉。但为此,我需要“NoActionBar”功能。我希望有人可以帮助我。感谢转发!
那是调试器的错误代码:
12-23 11:04:28.292 1410-1421/? E/ANDR-PERF-LOCK: Failed to apply optimization for resource: 4 level: 0
Run Code Online (Sandbox Code Playgroud)
那是我的styles.xml 代码:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:listDivider">@android:color/transparent</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
</resources>
Run Code Online (Sandbox Code Playgroud)