Android应用程序启动导入的模块而不是MainActivity

时间:2015-05-24 19:39:05

标签: android android-intent navigation drawer

Android新手。我正在实施一个导航抽屉,当选择一个特定的按钮(抽屉中的位置0)时,我将开始一项活动。这些活动是在我导入的模块中定义的。

首先,我创建了导航抽屉。我正在使用该位置来确定单击了哪个按钮。为了测试,我只使用一个按钮和一个活动。我将此项目导入为模块: https://github.com/spacecowboy/NoNonsense-FilePicker

我希望能够从菜单中开始他的第一个活动。我删除了他的清单的intent过滤器,以便我的应用程序首先显示在下面的代码中。问题是我的应用程序仍将首先启动导入的模块,而不是我的导航抽屉。如果我点击后退按钮,它会进入导航抽屉。因为我是菜鸟,所以无法发布截图。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.fileexplorer"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".FileexplorerActivity"
            android:label="@string/title_activity_fileexplorer">
            <!--android:theme="@android:style/Theme.Holo"--> >
           <!-- <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>-->

        </activity>

        <activity
            android:name=".FileChooser"
            android:label="Choose File" >
            //android:theme="@android:style/Theme.Holo">
                <action android:name="com.example.fileexplorer.FileChooser" />

                <category android:name="android.intent.category.DEFAULT" /> 
        </activity>

    </application>

</manifest>

我的MainActivity清单文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.jonny.nav" >

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        tools:replace="android:icon">
        <activity
            android:name=".MainActivity"
            android:theme="@style/Theme.AppCompat.Light"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

这是我从抽屉代码开始活动的方式。

private void selectItem(int position) {

        Intent selectedIntent = null;
        switch(position){
            case 0:
            {
                selectedIntent = new Intent(this.getActivity(), FileexplorerActivity.class);
                startActivity(selectedIntent);
                break;
            }
            default:
                break;
        }
    } 

2 个答案:

答案 0 :(得分:0)

一个肮脏的把戏将取代".MainActivity&#34;在你的xml中使用".FileChooser" ..

如果您的MainActivity现在正在启动,它应该让您使用文件选择器。

另一个选择是清洁并重新打开项目,如果你认为你正在做正确的事情..

答案 1 :(得分:0)

所以我发现它运作正常;我刚刚拥有它,所以默认情况下将开始位置0活动。将其移至位置1并解决了问题。