使用意图链接活动(Android 初学者)

Linking Activities Using Intents (Android Beginner)

开始学习Android,一直在阅读"Beginning Android 4 Application Development."(以及下载相关源码)..

但是;我一直在尝试创建一个非常简单的幻灯片,带有一个标记为 "Gallery" 的按钮,它将带我到一个新的 Activity,它会为我的照片显示类似网格的布局。但是,我的应用程序不会这样做。按下按钮时,它要么使应用程序崩溃,要么根本拒绝执行任何操作。

清单

<uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="21" />

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

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:label="Viwer"
        android:name=".Viwer" >
        <intent-filter >
            <action android:name="com.example.viwer.Gallery" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

</application>

</manifest>

任何帮助将不胜感激,我认为它很简单,但看了三个小时后我看不出它是什么。

您需要将图库 activity 添加到 Android 清单

<activity
    android:name=".Gallery"
    android:label="Gallery"></activity>

在您的清单中,您在 intent-filter 中注册了查看器 activity,但未声明为广播接收器。

第二个事件,如果它是广播接收器,它将永远不会启动,因为您不会通过调用 startActivity 发送任何广播

我认为你想要达到的目标是:

请试试这个:

 ebutton.setOnClickListener(new View.OnClickListener() {

        public void onClick(View view) {
            Intent intent =  new Intent(MainActivity.this,Viwer.calss )
            startActivity(intent);
            }

    });