getIntent() 问题

issue with getIntent()

我需要用我正在开发的应用程序打开 XML 文件...代码是:

<intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="*/*" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="file"  android:host="*" android:pathPattern=".*\.xml"  android:mimeType="*/*"  />
        </intent-filter>

没关系!

但我需要在单击文件时从 xml 文件中获取数据。 在片段中,如果我写:

Intent intent = getIntent();
intent.getData().toString();

getIntent() 被 IDE 写成红色...为什么?

如果您从 Fragment 调用 getIntent(),您需要获取 运行 所在的 Activity。所以试试

Intent intent = getActivity().getIntent();

希望对您有所帮助

尝试 getActivity().getIntent()。如果在 Activity 之外,您需要 activity

的实例