java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.cn/com.example.cn.MainActivity}:android.view.InflateException:二进制XML文件第2行:二进制XML文件第2行:膨胀类android.support.v4.widget.DrawerLayout时出错
req = requests.request('GET', "https://smartraveller.gov.au/countries/documents/index.rss")
a = str(req.text).encode()
tree = etree.fromstring(a)
ns = {'TravelAd': 'https://smartraveller.gov.au/countries/documents/index.rss',
'ta': 'http://www.smartraveller.gov.au/schema/rss/travel_advisories/'}
e = tree.findall('{0}channel/{0}item/{0}warnings/{0}level'.format(ns))
for i in e:
print(i.text)
app
'''
<?xml version="1.0" encoding="utf-8"?>
<androidx.drawerlayout.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawable_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="10dp"
android:paddingBottom="5dp"
tools:context="com.example.cn.MainActivity"
android:paddingStart="10dp"
tools:ignore="RtlSymmetry">
'''
答案 0 :(得分:0)
检查是否已添加依赖项。
dependencies {
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
}
然后使用标记android.support.v4.widget.DrawerLayout。
答案 1 :(得分:0)
我认为您已经在java类或kotlin类中定义了v4版本的抽屉布局。 那就是为什么它给你错误
答案 2 :(得分:0)
错误很明显。您在Android Support Libraries
中使用dependencies
,但是在layout
中您尝试使用androidx
。
例如:
Android支持Libray: com.android.support:appcompat-v7
AndroidX: androidx.appcompat:appcompat:1.0.0
因此,您有两个选择之一,或者继续使用Android Support Libraries
,这意味着您需要将DrawerLayout
重命名为<android.support.v4.widget.DrawerLayout
或将项目升级到AndroidX
。
要进行升级,您可以通过Refactor -> Migrate to AndroidX
从Android Studio中进行升级。
如果您决定使用这种方式,请遵循Android Studio提供的建议,它将zip
进行您的项目,然后进行升级。这意味着您可以始终在升级AndroidX
之前返回项目。
升级后,并非所有功能都可以正常工作 也许需要手动调整。