标签: android-inflate

膨胀类 com.google.android.material.slider.Slider 时出错

我想膨胀包含单个搜索栏的布局。通过这种方式,我创建了一个扩展片段类的java类,然后我膨胀了布局。但出现以下错误:

\n

二进制 XML 文件第 #9 行:二进制 XML 文件第 #9 行:膨胀类 com.google.android.material.slider.Slider 时出错

\n
warming.XML is in the following:\n\n    <?xml version="1.0" encoding="utf-8"?>\n<RelativeLayout\n    xmlns:android="http://schemas.android.com/apk/res/android"\n    xmlns:app="http://schemas.android.com/apk/res-auto"\n    android:layout_width="match_parent"\n    android:layout_height="match_parent">\n\n    <com.google.android.material.slider.Slider\n        android:layout_width="327dp"\n        android:layout_height="37dp"\n        android:layout_alignParentStart="true"\n        android:layout_alignParentTop="true"\n        android:layout_alignParentEnd="true"\n        android:layout_alignParentBottom="true"\n        android:layout_marginStart="42dp"\n        android:layout_marginTop="217dp"\n        android:layout_marginEnd="42dp"\n        android:layout_marginBottom="349dp"\n        android:valueFrom="0"\n        android:valueTo="300"\n        app:activeTrackColor="#ff4500"\n        app:inactiveTrackColor="#fbb999" >\n\n    </com.google.android.material.slider.Slider>\n</RelativeLayout>\n
Run Code Online (Sandbox Code Playgroud)\n

和firstPage.java 膨胀布局warming.XML 如下:

\n
public class firstPage extends Fragment {\n   @Nullable\n   @Override\n   public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {\n      return inflater.inflate(R.layout.warming,container,false);\n   }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

使用以下代码,我想执行firstPage.java类:

\n
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,new firstPage()).commit();\n
Run Code Online (Sandbox Code Playgroud)\n

怎么了?谁能帮我?我在StackOverflow和其他一些网站上搜索过这个问题,也有类似的问题,但没有人能解决我的问题。

\n

更新 …

java xml android fragment android-inflate

12
推荐指数
4
解决办法
8639
查看次数

类inf <unknown>时出错

我正试图在UI中工作.我正在尝试为列表条目设置stateListDrawable.我想要做的就是在按下项目时更改列表项目布局的颜色,并且在按下列表项目时我也想要更改文本的颜色.

我收到以下错误堆栈:

E/AndroidRuntime(  360): FATAL EXCEPTION: main
E/AndroidRuntime(  360): android.view.InflateException: Binary XML file line #8: Error inflating class <unknown>
E/AndroidRuntime(  360):    at android.view.LayoutInflater.createView(LayoutInflater.java:513)
E/AndroidRuntime(  360):    at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
E/AndroidRuntime(  360):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
E/AndroidRuntime(  360):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
E/AndroidRuntime(  360):    at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
E/AndroidRuntime(  360):    at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
E/AndroidRuntime(  360):    at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
Run Code Online (Sandbox Code Playgroud)

膨胀的XML如下:

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/help_list_container"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:padding="5dip"
    android:background="@drawable/default_list_selection">
    <TextView android:id="@+id/help_list_text" 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textSize="16sp"
        android:textColor="@drawable/help_text_color">
    </TextView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

如果我android:textColor从xml中删除属性,我可以让程序工作.有没有办法可以使用stateListDrawable来控制xml中的listitem的texColor?

stateListDrawable适用android:background于LinearLayout,但不适用于TextView的textColor属性.状态列表xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/white"
              android:state_pressed="true" …
Run Code Online (Sandbox Code Playgroud)

android textview android-inflate xml-drawable

11
推荐指数
1
解决办法
1万
查看次数

是否可以拍摄视图的屏幕截图,而不显示视图?

简短的问题:

假设我有某种布局文件并且我给它充气(或者在代码中使用正常的CTOR).

我希望在某些限制(给定的宽度和高度,甚至比屏幕更大)下看一下"截图"(位图),而不是显示膨胀的视图.

我不希望将视图添加到屏幕上的任何位置,但仅为此目的而保留它,并且可能稍后添加它.

这样的事情可以用于轻松操纵如何放置东西.例如,我可以使用一个布局,将图像放在其中,以便它周围有一个框架.

这样的事情可能吗?如果是这样,怎么样?

android screenshot android-inflate android-view

10
推荐指数
1
解决办法
4427
查看次数

浮动操作按钮和设计库膨胀错误

我正在使用设计支持库

defaultConfig {
        vectorDrawables.useSupportLibrary = true
        ...
}

dependencies {
    compile 'com.android.support:design:23.4.0'
    compile 'com.android.support:support-v4:23.4.0'
    ...
}
Run Code Online (Sandbox Code Playgroud)

当我添加FloatingActionButton时

<android.support.design.widget.FloatingActionButton
    android:layout_gravity="right"
    android:layout_margin="20dp"
    android:tint="#fff"
    android:src="@drawable/ic_menu_manage"
    app:backgroundTint="#b3000000"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
Run Code Online (Sandbox Code Playgroud)

到我的一个布局我得到这个错误

Caused by: java.lang.IllegalArgumentException: You need to use a Theme.AppCompat theme (or descendant) with the design library.
Run Code Online (Sandbox Code Playgroud)

这是我的主要活动(it has navigation drawer)

public class MapNavActivity extends AppCompatActivity
Run Code Online (Sandbox Code Playgroud)

我知道,如果我改变它应该工作AppCompatActivityActivity

但是,这对我不起作用.这是清单文件中定义的活动

<activity
    android:name=".MapNavActivity"
    android:label="@string/title_activity_map_nav"
    android:theme="@style/AppTheme.NoActionBarMain" />
Run Code Online (Sandbox Code Playgroud)

这是styles.xml文件中的主题

<style name="AppTheme.NoActionBarMain" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme …
Run Code Online (Sandbox Code Playgroud)

android android-inflate android-theme android-support-library floating-action-button

10
推荐指数
1
解决办法
1052
查看次数

layoutinflator有什么用?

我是一名新的Android开发人员.我试图从文档中了解布局充气机的使用但却无法理解.android中的布局充气器有什么用?

一个人必须使用它的情况是什么?

android android-layout android-inflate

8
推荐指数
1
解决办法
7798
查看次数

在Fragment附加到FragmentManager之前,不能执行onGetLayoutInflater()

我有时会得到一个Exception并带有以下消息:

在Fragment附加到FragmentManager之前,不能执行onGetLayoutInflater()

我的完整堆栈跟踪(使用CompositeAndroid作为父片段):

Fatal Exception: java.lang.IllegalStateException: onGetLayoutInflater() cannot be executed until the Fragment is attached to the FragmentManager.
       at android.support.v4.app.Fragment.getLayoutInflater(Fragment.java:1151)
       at com.pascalwelsch.compositeandroid.fragment.CompositeFragment.super_getLayoutInflater(CompositeFragment.java:1310)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$7.call(FragmentDelegate.java:204)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$7.call(FragmentDelegate.java:197)
       at com.pascalwelsch.compositeandroid.fragment.FragmentPlugin.getLayoutInflater(FragmentPlugin.java:149)
       at com.pascalwelsch.compositeandroid.fragment.FragmentPlugin.getLayoutInflater(FragmentPlugin.java:1269)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$7.call(FragmentDelegate.java:202)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$7.call(FragmentDelegate.java:197)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate.getLayoutInflater(FragmentDelegate.java:208)
       at com.pascalwelsch.compositeandroid.fragment.CompositeFragment.getLayoutInflater(CompositeFragment.java:163)
       at android.support.v4.app.Fragment.onGetLayoutInflater(Fragment.java:1101)
       at com.pascalwelsch.compositeandroid.fragment.CompositeFragment.super_onGetLayoutInflater(CompositeFragment.java:1710)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$32.call(FragmentDelegate.java:769)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$32.call(FragmentDelegate.java:762)
       at com.pascalwelsch.compositeandroid.fragment.FragmentPlugin.onGetLayoutInflater(FragmentPlugin.java:528)
       at com.pascalwelsch.compositeandroid.fragment.FragmentPlugin.onGetLayoutInflater(FragmentPlugin.java:1456)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$32.call(FragmentDelegate.java:767)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate$32.call(FragmentDelegate.java:762)
       at com.pascalwelsch.compositeandroid.fragment.FragmentDelegate.onGetLayoutInflater(FragmentDelegate.java:773)
       at com.pascalwelsch.compositeandroid.fragment.CompositeFragment.onGetLayoutInflater(CompositeFragment.java:538)
       at android.support.v4.app.Fragment.performGetLayoutInflater(Fragment.java:1132)
       at android.support.v4.app.Fragment.getLayoutInflater(Fragment.java:1117)
       at com.my.app.features.event.EventDetailFragment.attachHeader(EventDetailFragment.java:66)
       ...
Run Code Online (Sandbox Code Playgroud)

我们在这里可以看到,我们首先getLayoutInflater()在第1117行调用该方法,然后在第1151行调用该方法.

第一个就是这个:

/**
 * Returns the cached LayoutInflater used to inflate …
Run Code Online (Sandbox Code Playgroud)

android android-inflate android-fragments

8
推荐指数
1
解决办法
2163
查看次数

Inflating TextView throwing noSuchMethodException on method addFontWeightStyle() during inflate process

Update: I've changed the title to remove the indication that ExoPlayer has anything to do with what is going on as I've managed to duplicate this without it being used at all.

I decided to try and isolate this error on API levels:

I obtained an older Samsung tablet (Tab S2) running Android 7.0 (Api 24), and the error does not occur there.

I am not able to duplicate this problem on a Nexus 6 emulator using API 25

I …

nosuchmethoderror android-inflate layout-inflater android-studio android-typeface

8
推荐指数
1
解决办法
705
查看次数

Android View生命周期

我在我的应用程序中使用SemiClosedSlidingDrawer.

快速解释:

  1. 滑动抽屉有手柄内容部分
  2. 内容部分在创建视图时部分打开

问题:

当我创建视图时,内容部分被充气并缓存,然后部分显示.如果我对主要内容执行任何操作.它反映到滑动抽屉的内容部分.即使它是部分可见的.

我设法找到了内容未设置为GONE 的答案,因此只有接收触摸事件.

在完成所有通胀缓存后,我必须将内容设置为GONE.所以我需要知道

哪个View创建生命周期方法最后调用?或者 在哪里设置ChildView的可见性属性?

我可以在活动中引用我的slidingDrawer内容并设置为GONE它工作正常.但应该有一个正确的方法来解决这个问题.

lifecycle android view android-inflate

7
推荐指数
1
解决办法
4190
查看次数

在 Android 中膨胀类按钮时出错

我有一个最小 sdk 16 到 23 的应用程序。我想尽可能多地使用材料设计。它也必须是全屏应用程序。包括 AppCompat 支持库。现在我有一些按钮的登录活动:

<Button
    android:id="@+id/act_logon_btn_logon"
    style="@style/ButtonDefault"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/act_logon_logon" />
Run Code Online (Sandbox Code Playgroud)

样式如下(values/styles.xml):

<style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light">
    <item name="windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
</style>

<style name="AppThemeBase" parent="Theme.AppCompat.Light.NoActionBar.FullScreen"></style>

<style name="AppTheme" parent="AppThemeBase"></style>

<style name="ButtonDefault" parent="Widget.AppCompat.Button">
    <item name="android:textSize">?attr/font_medium</item>
</style>

<style name="FontStyle"></style>

<style name="FontStyle.Small">
    <item name="font_small">12sp</item>
    <item name="font_medium">14sp</item>
    <item name="font_large">16sp</item>
</style>

<style name="FontStyle.Medium">
    <item name="font_small">16sp</item>
    <item name="font_medium">18sp</item>
    <item name="font_large">20sp</item>
</style>

<style name="FontStyle.Large">
    <item name="font_small">20sp</item>
    <item name="font_medium">22sp</item>
    <item name="font_large">24sp</item>
</style>
Run Code Online (Sandbox Code Playgroud)

在值/属性中:

<declare-styleable name="FontStyle">
    <attr name="font_small" format="dimension" />
    <attr name="font_medium" format="dimension" /> …
Run Code Online (Sandbox Code Playgroud)

android android-inflate inflate-exception android-styles android-attributes

7
推荐指数
2
解决办法
3万
查看次数

Firebase Crashlytics 报告 InflateException: ResourceNotFoundException for a Trend TaintArt for 4x6

当我的应用程序尝试膨胀包含 ImageView 的布局时,它在运行 Android 7.1.2 的 x86 的 Trend TaintArt 上失败。崩溃报告 Drawable 不存在:

在此处输入图片说明

然而,Drawable (ic_list_white) 是存在的:

在此处输入图片说明

奇怪的是,这似乎是唯一有问题的设备。有没有人遇到过这个问题?

android android-inflate android-imageview inflate-exception firebase-crash-reporting

7
推荐指数
2
解决办法
1130
查看次数